<!DOCTYPE html>
<html lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>find_component_model [HALCON算子参考手册]</title>
<style type="text/css">
      body {
    color: #000000;
    background-color: #ffffff;
    margin: 0;
    font-family: Arial, Helvetica, sans-serif;
}

.body_main {
    margin-left: 35px;
    margin-right: 35px;
}

@media screen and (min-width:992px) {

    .body_main {
        margin-left: 10%;
        margin-right: 10%;
    }

    table.toctable {
        width: 80%
    }
}

@media screen and (min-width:1400px) {

    .body_main {
        margin-left: 15%;
        margin-right: 15%;
    }

    table.toctable {
        width: 70%
    }
}

body>div ul ul {
    margin-left: inherit;
}

a:link {
    color: #0044cc;
}

a:link,
a:visited {
    text-decoration: none;
}

a:link:hover,
a:visited:hover {
    text-decoration: underline;
}

th {
    text-align: left;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    text-rendering: optimizeLegibility;
    color: #666666;
}

code {
    font-family: monospace,monospace;
}

h1 a.halconoperator {
    font-family: Arial, Helvetica, sans-serif;
    color: #666666;
}

h2 a.halconoperator {
    font-family: Arial, Helvetica, sans-serif;
    color: #666666;
}

hr {
    border: 0;
    border-top: solid 1px #f28d26;
}

.pre {
    display: block;
    padding-bottom: 1ex;
    font-family: monospace;
    white-space: pre;
}

pre {
    font-family: monospace, monospace;
    padding: 1ex;
    white-space: pre-wrap;
}

.toc {
    font-size: 80%;
    border-top: 1px dashed #f28d26;
    border-bottom: 1px dashed #f28d26;
    padding-top: 5px;
    padding-bottom: 5px;
}

.inv {
    margin: 0;
    border: 0;
    padding: 0;
}

.banner {
    color: #666666;
    padding-left: 1em;
}

.logo {
    background-color: white;
}

.keyboard {
    font-size: 80%;
    padding-left: 3px;
    padding-right: 3px;
    border-radius: 5px;
    border-width: 1px;
    border-style: solid;
    border-color: #f28d26;
    background-color: #f3f3f3;
}

.warning {
    margin-top: 2ex;
    margin-bottom: 1ex;
    padding: 10px;
    text-align: center;
    border: 1px solid;
    color: #bb0000;
    background-color: #fff7f7
}

.imprint {
    margin-top: 1ex;
    font-size: 80%;
    color: #666666;
}

.imprinthead {
    font-weight: bolder;
    color: #666666;
}

.indexlink {
    text-align: right;
    padding-bottom: 5px;
}

.postscript {
    margin-top: 2ex;
    font-size: 80%;
    color: #666666
}

.evenrow {
    background-color: #e7e7ef;
    vertical-align: top;
}

.oddrow {
    background-color: #f7f7ff;
    vertical-align: top;
}

.headrow {
    background-color: #97979f;
    color: #ffffff;
    vertical-align: top;
}

.logorow {
    vertical-align: top;
}

.error {
    color: red;
}

.var {
    font-style: italic
}

.halconoperator {
    font-family: monospace, monospace;
}

span.operator {
    font-family: monospace, monospace;
}

span.procedure {
    font-family: monospace, monospace;
}

span.operation {
    font-family: monospace, monospace;
}

span.feature {
    font-family: Arial, Helvetica, Homerton, sans-serif;
}

ul {
    padding-left: 1.2em;
}

li.dot {
    list-style-type: square;
    color: #f28d26;
}

.breadcrumb {
    font-size: 80%;
    color: white;
    background-color: #062d64;
    margin-bottom: 20px;
    padding-left: 35px;
    padding-right: 35px;
    padding-bottom: 15px;
}

.webbar {
    font-size: 80%;
    background-color: #dddddd;
    margin-top: 0px;
    margin-left: -35px;
    margin-right: -35px;
    margin-bottom: 0px;
    padding-top: 5px;
    padding-left: 35px;
    padding-right: 35px;
    padding-bottom: 5px;
}

.footer {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    border-top: 1px dashed #f28d26;
    font-size: 80%;
    color: #666666;
    padding-bottom: 8px;
}

.footer .socialmedia a {
    padding-left: 7px;
}

.socialmedia {
    padding-top: 10px;
}

.copyright {
    margin-top: 19px;
}

.breadcrumb a {
    color: #ffffff;
    border-bottom: 1px solid white;
}

.breadcrumb a:link:hover,
.breadcrumb a:visited:hover {
    text-decoration: none;
    border-bottom: none;
}

.heading {
    margin-top: 1ex;
    font-size: 110%;
    font-weight: bold;
    color: #666666;
}

.text {
    color: black;
}

.example {
    font-size: 80%;
    background-color: #f3f3f3;
    border: 1px dashed #666666;
    padding: 10px;
}

.displaymath {
    display: block;
    text-align: center;
    margin-top: 1ex;
    margin-bottom: 1ex;
}

.title {
    float: left;
    padding-top: 3px;
    padding-bottom: 3px;
}

.signnote {
    font-family: Arial, Helvetica, Homerton, sans-serif;
    font-size: 80%;
    color: #666666;
    font-weight: lighter;
    font-style: italic
}

.par {
    margin-bottom: 1.5em;
}

.parhead {
    text-align: right;
}

.parname {
    float: left;
}

.pardesc {
    font-size: 85%;
    margin-top: 0.5em;
    margin-bottom: 0.5em;
    margin-left: 2em;
}

.parcat {
    color: #666;
    font-weight: bold;
}

*[data-if=cpp],
*[data-if=c],
*[data-if=dotnet],
*[data-if=com],
*[data-if=python] {
    display: none;
}

.tabbar {
    text-align: right;
    border-bottom: 1px solid #f28d26;
    margin-bottom: 0.5em;
}

ul.tabs {
    padding-top: 3px;
    padding-bottom: 3px;
    margin-top: 10px;
    margin-bottom: 0;
    font-size: 80%
}

ul.tabs li {
    padding-top: 3px;
    padding-bottom: 3px;
    display: inline;
    overflow: hidden;
    list-style-type: none;
    margin: 0;
    margin-left: 8px;
    border-top: 1px solid #666;
    border-left: 1px solid #666;
    border-right: 1px solid #666;
}

ul.tabs li.active {
    border-left: 1px solid #f28d26;
    border-right: 1px solid #f28d26;
    border-top: 1px solid #f28d26;
    border-bottom: 1px solid #fff;
}

ul.tabs li.inactive {
    background-color: #eee;
}

ul.tabs li a {
    padding-left: 5px;
    padding-right: 5px;
    color: #666;
}

ul.tabs li a:link:hover {
    text-decoration: none;
}

ul.tabs li.inactive a {
    color: #666;
}

ul.tabs li.active a {
    color: black;
}

dl.generic dd {
    margin-bottom: 1em;
}

.pari {
    color: olive;
}

.paro {
    color: maroon;
}

.comment {
    font-size: 80%;
    color: green;
    white-space: nowrap;
}

table.grid {
    border-collapse: collapse;
}

table.grid td {
    padding: 5px;
    border: 1px solid;
}

table.layout {
    border: 0px;
}

table.layout td {
    padding: 5px;
}

table.table {
    border-collapse: collapse;
}

table.table td {
    padding: 5px;
    border-left: 0px;
    border-right: 0px;
}

table.table tr:last-child {
    border-bottom: 1px solid;
}

table.table th {
    padding: 5px;
    border-top: 1px solid;
    border-bottom: 1px solid;
    border-left: 0px;
    border-right: 0px;
}

.details_summary {
    cursor: pointer;
}

table.toctable {
    width: 100%;
}

table.toctable col:first-child {
    width: 20%;
}

table.toctable col:nth-last-child(2) {
    width: 8%;
}

table.altcolored tr:nth-child(even) {
    background-color: #f3f3f3;
}

    </style>
<!--OP_REF_STYLE_END-->
<script>
    <!--
var active_lang='hdevelop';function switchVisibility(obj,active_lang,new_lang)
{var display_style='inline';
for(var i=0;i<obj.length;i++)
{if(obj.item(i).getAttribute('data-if')==new_lang)
{obj.item(i).style.display=display_style;}
if(obj.item(i).getAttribute('data-if')==active_lang)
{obj.item(i).style.display='none';}}
return;}
function toggleLanguage(new_lang,initial)
{if(active_lang!=new_lang)
{var lis=document.getElementsByTagName('li');for(var i=0;i<lis.length;i++)
{if(lis.item(i).id=='syn-'+new_lang)
{lis.item(i).className='active';}
else
{lis.item(i).className='inactive';}}
var divs=document.getElementsByTagName('div');var spans=document.getElementsByTagName('span');switchVisibility(divs,active_lang,new_lang);switchVisibility(spans,active_lang,new_lang);if(!initial)
{setCookie("halcon_reference_language",new_lang,null,null);}
active_lang=new_lang;}
return;}
function setCookie(name,value,domain,exp_offset,path,secure)
{localStorage.setItem(name,value);}
function getCookie(name)
{return localStorage.getItem(name);}
function initialize()
{var qs=location.href.split('?')[1];var qs_lang_raw=location.href.split('interface=')[1];var qs_lang;if(qs_lang_raw)
{qs_lang=qs_lang_raw.split('#')[0];}
var cookie_lang=getCookie("halcon_reference_language");var new_lang;if((qs_lang=="hdevelop")||(qs_lang=="dotnet")||(qs_lang=="python")||(qs_lang=="cpp")||(qs_lang=="c"))
{new_lang=qs_lang;setCookie("halcon_reference_language",new_lang,null,null);}
else if((cookie_lang=="hdevelop")||(cookie_lang=="dotnet")||(cookie_lang=="python")||(cookie_lang=="cpp")||(cookie_lang=="c"))
{new_lang=cookie_lang;}
else
{new_lang="hdevelop";}
toggleLanguage(new_lang,1);return;}
-->

  </script>
</head>
<body onload="initialize();">
<div class="breadcrumb">
<br class="inv"><a href="index.html">目录</a> / <a href="toc_matching.html">Matching</a> / <a href="toc_matching_componentbased.html">Component-Based</a><br class="inv">
</div>
<div class="body_main">
<div class="tabbar"><ul class="tabs">
<li id="syn-hdevelop" class="active"><a href="javascript:void(0);" onclick="toggleLanguage('hdevelop')" onfocus="blur()">HDevelop</a></li>
<li id="syn-dotnet" class="inactive"><a href="javascript:void(0);" onclick="toggleLanguage('dotnet')" onfocus="blur()">.NET</a></li>
<li id="syn-python" class="inactive"><a href="javascript:void(0);" onclick="toggleLanguage('python')" onfocus="blur()">Python</a></li>
<li id="syn-cpp" class="inactive"><a href="javascript:void(0);" onclick="toggleLanguage('cpp')" onfocus="blur()">C++</a></li>
<li id="syn-c" class="inactive"><a href="javascript:void(0);" onclick="toggleLanguage('c')" onfocus="blur()">C</a></li>
</ul></div>
<div class="indexlink">
<a href="index_classes.html"><span data-if="dotnet" style="display:none;">类别</span><span data-if="cpp" style="display:none;">类别</span></a><span data-if="dotnet" style="display:none;"> | </span><span data-if="cpp" style="display:none;"> | </span><a href="index_by_name.html">算子列表</a>
</div>
<!--OP_REF_HEADER_END-->
<h1 id="sec_name">
<span data-if="hdevelop" style="display:inline;">find_component_model</span><span data-if="c" style="display:none;">T_find_component_model</span><span data-if="cpp" style="display:none;">FindComponentModel</span><span data-if="dotnet" style="display:none;">FindComponentModel</span><span data-if="python" style="display:none;">find_component_model</span> (算子名称)</h1>
<h2>名称</h2>
<p><code><span data-if="hdevelop" style="display:inline;">find_component_model</span><span data-if="c" style="display:none;">T_find_component_model</span><span data-if="cpp" style="display:none;">FindComponentModel</span><span data-if="dotnet" style="display:none;">FindComponentModel</span><span data-if="python" style="display:none;">find_component_model</span></code> — Find the best matches of a component model in an image.</p>
<h2 id="sec_synopsis">参数签名</h2>
<div data-if="hdevelop" style="display:inline;">
<p>
<code><b>find_component_model</b>(<a href="#Image"><i>Image</i></a> :  : <a href="#ComponentModelID"><i>ComponentModelID</i></a>, <a href="#RootComponent"><i>RootComponent</i></a>, <a href="#AngleStartRoot"><i>AngleStartRoot</i></a>, <a href="#AngleExtentRoot"><i>AngleExtentRoot</i></a>, <a href="#MinScore"><i>MinScore</i></a>, <a href="#NumMatches"><i>NumMatches</i></a>, <a href="#MaxOverlap"><i>MaxOverlap</i></a>, <a href="#IfRootNotFound"><i>IfRootNotFound</i></a>, <a href="#IfComponentNotFound"><i>IfComponentNotFound</i></a>, <a href="#PosePrediction"><i>PosePrediction</i></a>, <a href="#MinScoreComp"><i>MinScoreComp</i></a>, <a href="#SubPixelComp"><i>SubPixelComp</i></a>, <a href="#NumLevelsComp"><i>NumLevelsComp</i></a>, <a href="#GreedinessComp"><i>GreedinessComp</i></a> : <a href="#ModelStart"><i>ModelStart</i></a>, <a href="#ModelEnd"><i>ModelEnd</i></a>, <a href="#Score"><i>Score</i></a>, <a href="#RowComp"><i>RowComp</i></a>, <a href="#ColumnComp"><i>ColumnComp</i></a>, <a href="#AngleComp"><i>AngleComp</i></a>, <a href="#ScoreComp"><i>ScoreComp</i></a>, <a href="#ModelComp"><i>ModelComp</i></a>)</code></p>
</div>
<div data-if="c" style="display:none;">
<p>
<code>Herror <b>T_find_component_model</b>(const Hobject <a href="#Image"><i>Image</i></a>, const Htuple <a href="#ComponentModelID"><i>ComponentModelID</i></a>, const Htuple <a href="#RootComponent"><i>RootComponent</i></a>, const Htuple <a href="#AngleStartRoot"><i>AngleStartRoot</i></a>, const Htuple <a href="#AngleExtentRoot"><i>AngleExtentRoot</i></a>, const Htuple <a href="#MinScore"><i>MinScore</i></a>, const Htuple <a href="#NumMatches"><i>NumMatches</i></a>, const Htuple <a href="#MaxOverlap"><i>MaxOverlap</i></a>, const Htuple <a href="#IfRootNotFound"><i>IfRootNotFound</i></a>, const Htuple <a href="#IfComponentNotFound"><i>IfComponentNotFound</i></a>, const Htuple <a href="#PosePrediction"><i>PosePrediction</i></a>, const Htuple <a href="#MinScoreComp"><i>MinScoreComp</i></a>, const Htuple <a href="#SubPixelComp"><i>SubPixelComp</i></a>, const Htuple <a href="#NumLevelsComp"><i>NumLevelsComp</i></a>, const Htuple <a href="#GreedinessComp"><i>GreedinessComp</i></a>, Htuple* <a href="#ModelStart"><i>ModelStart</i></a>, Htuple* <a href="#ModelEnd"><i>ModelEnd</i></a>, Htuple* <a href="#Score"><i>Score</i></a>, Htuple* <a href="#RowComp"><i>RowComp</i></a>, Htuple* <a href="#ColumnComp"><i>ColumnComp</i></a>, Htuple* <a href="#AngleComp"><i>AngleComp</i></a>, Htuple* <a href="#ScoreComp"><i>ScoreComp</i></a>, Htuple* <a href="#ModelComp"><i>ModelComp</i></a>)</code></p>
</div>
<div data-if="cpp" style="display:none;">
<p>
<code>void <b>FindComponentModel</b>(const HObject&amp; <a href="#Image"><i>Image</i></a>, const HTuple&amp; <a href="#ComponentModelID"><i>ComponentModelID</i></a>, const HTuple&amp; <a href="#RootComponent"><i>RootComponent</i></a>, const HTuple&amp; <a href="#AngleStartRoot"><i>AngleStartRoot</i></a>, const HTuple&amp; <a href="#AngleExtentRoot"><i>AngleExtentRoot</i></a>, const HTuple&amp; <a href="#MinScore"><i>MinScore</i></a>, const HTuple&amp; <a href="#NumMatches"><i>NumMatches</i></a>, const HTuple&amp; <a href="#MaxOverlap"><i>MaxOverlap</i></a>, const HTuple&amp; <a href="#IfRootNotFound"><i>IfRootNotFound</i></a>, const HTuple&amp; <a href="#IfComponentNotFound"><i>IfComponentNotFound</i></a>, const HTuple&amp; <a href="#PosePrediction"><i>PosePrediction</i></a>, const HTuple&amp; <a href="#MinScoreComp"><i>MinScoreComp</i></a>, const HTuple&amp; <a href="#SubPixelComp"><i>SubPixelComp</i></a>, const HTuple&amp; <a href="#NumLevelsComp"><i>NumLevelsComp</i></a>, const HTuple&amp; <a href="#GreedinessComp"><i>GreedinessComp</i></a>, HTuple* <a href="#ModelStart"><i>ModelStart</i></a>, HTuple* <a href="#ModelEnd"><i>ModelEnd</i></a>, HTuple* <a href="#Score"><i>Score</i></a>, HTuple* <a href="#RowComp"><i>RowComp</i></a>, HTuple* <a href="#ColumnComp"><i>ColumnComp</i></a>, HTuple* <a href="#AngleComp"><i>AngleComp</i></a>, HTuple* <a href="#ScoreComp"><i>ScoreComp</i></a>, HTuple* <a href="#ModelComp"><i>ModelComp</i></a>)</code></p>
<p>
<code><a href="HTuple.html">HTuple</a> <a href="HComponentModel.html">HComponentModel</a>::<b>FindComponentModel</b>(const HImage&amp; <a href="#Image"><i>Image</i></a>, const HTuple&amp; <a href="#RootComponent"><i>RootComponent</i></a>, const HTuple&amp; <a href="#AngleStartRoot"><i>AngleStartRoot</i></a>, const HTuple&amp; <a href="#AngleExtentRoot"><i>AngleExtentRoot</i></a>, double <a href="#MinScore"><i>MinScore</i></a>, Hlong <a href="#NumMatches"><i>NumMatches</i></a>, double <a href="#MaxOverlap"><i>MaxOverlap</i></a>, const HString&amp; <a href="#IfRootNotFound"><i>IfRootNotFound</i></a>, const HString&amp; <a href="#IfComponentNotFound"><i>IfComponentNotFound</i></a>, const HString&amp; <a href="#PosePrediction"><i>PosePrediction</i></a>, const HTuple&amp; <a href="#MinScoreComp"><i>MinScoreComp</i></a>, const HTuple&amp; <a href="#SubPixelComp"><i>SubPixelComp</i></a>, const HTuple&amp; <a href="#NumLevelsComp"><i>NumLevelsComp</i></a>, const HTuple&amp; <a href="#GreedinessComp"><i>GreedinessComp</i></a>, HTuple* <a href="#ModelEnd"><i>ModelEnd</i></a>, HTuple* <a href="#Score"><i>Score</i></a>, HTuple* <a href="#RowComp"><i>RowComp</i></a>, HTuple* <a href="#ColumnComp"><i>ColumnComp</i></a>, HTuple* <a href="#AngleComp"><i>AngleComp</i></a>, HTuple* <a href="#ScoreComp"><i>ScoreComp</i></a>, HTuple* <a href="#ModelComp"><i>ModelComp</i></a>) const</code></p>
<p>
<code>Hlong <a href="HComponentModel.html">HComponentModel</a>::<b>FindComponentModel</b>(const HImage&amp; <a href="#Image"><i>Image</i></a>, Hlong <a href="#RootComponent"><i>RootComponent</i></a>, double <a href="#AngleStartRoot"><i>AngleStartRoot</i></a>, double <a href="#AngleExtentRoot"><i>AngleExtentRoot</i></a>, double <a href="#MinScore"><i>MinScore</i></a>, Hlong <a href="#NumMatches"><i>NumMatches</i></a>, double <a href="#MaxOverlap"><i>MaxOverlap</i></a>, const HString&amp; <a href="#IfRootNotFound"><i>IfRootNotFound</i></a>, const HString&amp; <a href="#IfComponentNotFound"><i>IfComponentNotFound</i></a>, const HString&amp; <a href="#PosePrediction"><i>PosePrediction</i></a>, double <a href="#MinScoreComp"><i>MinScoreComp</i></a>, const HString&amp; <a href="#SubPixelComp"><i>SubPixelComp</i></a>, Hlong <a href="#NumLevelsComp"><i>NumLevelsComp</i></a>, double <a href="#GreedinessComp"><i>GreedinessComp</i></a>, Hlong* <a href="#ModelEnd"><i>ModelEnd</i></a>, double* <a href="#Score"><i>Score</i></a>, double* <a href="#RowComp"><i>RowComp</i></a>, double* <a href="#ColumnComp"><i>ColumnComp</i></a>, double* <a href="#AngleComp"><i>AngleComp</i></a>, double* <a href="#ScoreComp"><i>ScoreComp</i></a>, Hlong* <a href="#ModelComp"><i>ModelComp</i></a>) const</code></p>
<p>
<code>Hlong <a href="HComponentModel.html">HComponentModel</a>::<b>FindComponentModel</b>(const HImage&amp; <a href="#Image"><i>Image</i></a>, Hlong <a href="#RootComponent"><i>RootComponent</i></a>, double <a href="#AngleStartRoot"><i>AngleStartRoot</i></a>, double <a href="#AngleExtentRoot"><i>AngleExtentRoot</i></a>, double <a href="#MinScore"><i>MinScore</i></a>, Hlong <a href="#NumMatches"><i>NumMatches</i></a>, double <a href="#MaxOverlap"><i>MaxOverlap</i></a>, const char* <a href="#IfRootNotFound"><i>IfRootNotFound</i></a>, const char* <a href="#IfComponentNotFound"><i>IfComponentNotFound</i></a>, const char* <a href="#PosePrediction"><i>PosePrediction</i></a>, double <a href="#MinScoreComp"><i>MinScoreComp</i></a>, const char* <a href="#SubPixelComp"><i>SubPixelComp</i></a>, Hlong <a href="#NumLevelsComp"><i>NumLevelsComp</i></a>, double <a href="#GreedinessComp"><i>GreedinessComp</i></a>, Hlong* <a href="#ModelEnd"><i>ModelEnd</i></a>, double* <a href="#Score"><i>Score</i></a>, double* <a href="#RowComp"><i>RowComp</i></a>, double* <a href="#ColumnComp"><i>ColumnComp</i></a>, double* <a href="#AngleComp"><i>AngleComp</i></a>, double* <a href="#ScoreComp"><i>ScoreComp</i></a>, Hlong* <a href="#ModelComp"><i>ModelComp</i></a>) const</code></p>
<p>
<code>Hlong <a href="HComponentModel.html">HComponentModel</a>::<b>FindComponentModel</b>(const HImage&amp; <a href="#Image"><i>Image</i></a>, Hlong <a href="#RootComponent"><i>RootComponent</i></a>, double <a href="#AngleStartRoot"><i>AngleStartRoot</i></a>, double <a href="#AngleExtentRoot"><i>AngleExtentRoot</i></a>, double <a href="#MinScore"><i>MinScore</i></a>, Hlong <a href="#NumMatches"><i>NumMatches</i></a>, double <a href="#MaxOverlap"><i>MaxOverlap</i></a>, const wchar_t* <a href="#IfRootNotFound"><i>IfRootNotFound</i></a>, const wchar_t* <a href="#IfComponentNotFound"><i>IfComponentNotFound</i></a>, const wchar_t* <a href="#PosePrediction"><i>PosePrediction</i></a>, double <a href="#MinScoreComp"><i>MinScoreComp</i></a>, const wchar_t* <a href="#SubPixelComp"><i>SubPixelComp</i></a>, Hlong <a href="#NumLevelsComp"><i>NumLevelsComp</i></a>, double <a href="#GreedinessComp"><i>GreedinessComp</i></a>, Hlong* <a href="#ModelEnd"><i>ModelEnd</i></a>, double* <a href="#Score"><i>Score</i></a>, double* <a href="#RowComp"><i>RowComp</i></a>, double* <a href="#ColumnComp"><i>ColumnComp</i></a>, double* <a href="#AngleComp"><i>AngleComp</i></a>, double* <a href="#ScoreComp"><i>ScoreComp</i></a>, Hlong* <a href="#ModelComp"><i>ModelComp</i></a>) const  <span class="signnote">
            (
            Windows only)
          </span></code></p>
<p>
<code><a href="HTuple.html">HTuple</a> <a href="HImage.html">HImage</a>::<b>FindComponentModel</b>(const HComponentModel&amp; <a href="#ComponentModelID"><i>ComponentModelID</i></a>, const HTuple&amp; <a href="#RootComponent"><i>RootComponent</i></a>, const HTuple&amp; <a href="#AngleStartRoot"><i>AngleStartRoot</i></a>, const HTuple&amp; <a href="#AngleExtentRoot"><i>AngleExtentRoot</i></a>, double <a href="#MinScore"><i>MinScore</i></a>, Hlong <a href="#NumMatches"><i>NumMatches</i></a>, double <a href="#MaxOverlap"><i>MaxOverlap</i></a>, const HString&amp; <a href="#IfRootNotFound"><i>IfRootNotFound</i></a>, const HString&amp; <a href="#IfComponentNotFound"><i>IfComponentNotFound</i></a>, const HString&amp; <a href="#PosePrediction"><i>PosePrediction</i></a>, const HTuple&amp; <a href="#MinScoreComp"><i>MinScoreComp</i></a>, const HTuple&amp; <a href="#SubPixelComp"><i>SubPixelComp</i></a>, const HTuple&amp; <a href="#NumLevelsComp"><i>NumLevelsComp</i></a>, const HTuple&amp; <a href="#GreedinessComp"><i>GreedinessComp</i></a>, HTuple* <a href="#ModelEnd"><i>ModelEnd</i></a>, HTuple* <a href="#Score"><i>Score</i></a>, HTuple* <a href="#RowComp"><i>RowComp</i></a>, HTuple* <a href="#ColumnComp"><i>ColumnComp</i></a>, HTuple* <a href="#AngleComp"><i>AngleComp</i></a>, HTuple* <a href="#ScoreComp"><i>ScoreComp</i></a>, HTuple* <a href="#ModelComp"><i>ModelComp</i></a>) const</code></p>
<p>
<code>Hlong <a href="HImage.html">HImage</a>::<b>FindComponentModel</b>(const HComponentModel&amp; <a href="#ComponentModelID"><i>ComponentModelID</i></a>, Hlong <a href="#RootComponent"><i>RootComponent</i></a>, double <a href="#AngleStartRoot"><i>AngleStartRoot</i></a>, double <a href="#AngleExtentRoot"><i>AngleExtentRoot</i></a>, double <a href="#MinScore"><i>MinScore</i></a>, Hlong <a href="#NumMatches"><i>NumMatches</i></a>, double <a href="#MaxOverlap"><i>MaxOverlap</i></a>, const HString&amp; <a href="#IfRootNotFound"><i>IfRootNotFound</i></a>, const HString&amp; <a href="#IfComponentNotFound"><i>IfComponentNotFound</i></a>, const HString&amp; <a href="#PosePrediction"><i>PosePrediction</i></a>, double <a href="#MinScoreComp"><i>MinScoreComp</i></a>, const HString&amp; <a href="#SubPixelComp"><i>SubPixelComp</i></a>, Hlong <a href="#NumLevelsComp"><i>NumLevelsComp</i></a>, double <a href="#GreedinessComp"><i>GreedinessComp</i></a>, Hlong* <a href="#ModelEnd"><i>ModelEnd</i></a>, double* <a href="#Score"><i>Score</i></a>, double* <a href="#RowComp"><i>RowComp</i></a>, double* <a href="#ColumnComp"><i>ColumnComp</i></a>, double* <a href="#AngleComp"><i>AngleComp</i></a>, double* <a href="#ScoreComp"><i>ScoreComp</i></a>, Hlong* <a href="#ModelComp"><i>ModelComp</i></a>) const</code></p>
<p>
<code>Hlong <a href="HImage.html">HImage</a>::<b>FindComponentModel</b>(const HComponentModel&amp; <a href="#ComponentModelID"><i>ComponentModelID</i></a>, Hlong <a href="#RootComponent"><i>RootComponent</i></a>, double <a href="#AngleStartRoot"><i>AngleStartRoot</i></a>, double <a href="#AngleExtentRoot"><i>AngleExtentRoot</i></a>, double <a href="#MinScore"><i>MinScore</i></a>, Hlong <a href="#NumMatches"><i>NumMatches</i></a>, double <a href="#MaxOverlap"><i>MaxOverlap</i></a>, const char* <a href="#IfRootNotFound"><i>IfRootNotFound</i></a>, const char* <a href="#IfComponentNotFound"><i>IfComponentNotFound</i></a>, const char* <a href="#PosePrediction"><i>PosePrediction</i></a>, double <a href="#MinScoreComp"><i>MinScoreComp</i></a>, const char* <a href="#SubPixelComp"><i>SubPixelComp</i></a>, Hlong <a href="#NumLevelsComp"><i>NumLevelsComp</i></a>, double <a href="#GreedinessComp"><i>GreedinessComp</i></a>, Hlong* <a href="#ModelEnd"><i>ModelEnd</i></a>, double* <a href="#Score"><i>Score</i></a>, double* <a href="#RowComp"><i>RowComp</i></a>, double* <a href="#ColumnComp"><i>ColumnComp</i></a>, double* <a href="#AngleComp"><i>AngleComp</i></a>, double* <a href="#ScoreComp"><i>ScoreComp</i></a>, Hlong* <a href="#ModelComp"><i>ModelComp</i></a>) const</code></p>
<p>
<code>Hlong <a href="HImage.html">HImage</a>::<b>FindComponentModel</b>(const HComponentModel&amp; <a href="#ComponentModelID"><i>ComponentModelID</i></a>, Hlong <a href="#RootComponent"><i>RootComponent</i></a>, double <a href="#AngleStartRoot"><i>AngleStartRoot</i></a>, double <a href="#AngleExtentRoot"><i>AngleExtentRoot</i></a>, double <a href="#MinScore"><i>MinScore</i></a>, Hlong <a href="#NumMatches"><i>NumMatches</i></a>, double <a href="#MaxOverlap"><i>MaxOverlap</i></a>, const wchar_t* <a href="#IfRootNotFound"><i>IfRootNotFound</i></a>, const wchar_t* <a href="#IfComponentNotFound"><i>IfComponentNotFound</i></a>, const wchar_t* <a href="#PosePrediction"><i>PosePrediction</i></a>, double <a href="#MinScoreComp"><i>MinScoreComp</i></a>, const wchar_t* <a href="#SubPixelComp"><i>SubPixelComp</i></a>, Hlong <a href="#NumLevelsComp"><i>NumLevelsComp</i></a>, double <a href="#GreedinessComp"><i>GreedinessComp</i></a>, Hlong* <a href="#ModelEnd"><i>ModelEnd</i></a>, double* <a href="#Score"><i>Score</i></a>, double* <a href="#RowComp"><i>RowComp</i></a>, double* <a href="#ColumnComp"><i>ColumnComp</i></a>, double* <a href="#AngleComp"><i>AngleComp</i></a>, double* <a href="#ScoreComp"><i>ScoreComp</i></a>, Hlong* <a href="#ModelComp"><i>ModelComp</i></a>) const  <span class="signnote">
            (
            Windows only)
          </span></code></p>
</div>
<div data-if="com" style="display:none;"></div>
<div data-if="dotnet" style="display:none;">
<p>
<code>static void <a href="HOperatorSet.html">HOperatorSet</a>.<b>FindComponentModel</b>(<a href="HObject.html">HObject</a> <a href="#Image"><i>image</i></a>, <a href="HTuple.html">HTuple</a> <a href="#ComponentModelID"><i>componentModelID</i></a>, <a href="HTuple.html">HTuple</a> <a href="#RootComponent"><i>rootComponent</i></a>, <a href="HTuple.html">HTuple</a> <a href="#AngleStartRoot"><i>angleStartRoot</i></a>, <a href="HTuple.html">HTuple</a> <a href="#AngleExtentRoot"><i>angleExtentRoot</i></a>, <a href="HTuple.html">HTuple</a> <a href="#MinScore"><i>minScore</i></a>, <a href="HTuple.html">HTuple</a> <a href="#NumMatches"><i>numMatches</i></a>, <a href="HTuple.html">HTuple</a> <a href="#MaxOverlap"><i>maxOverlap</i></a>, <a href="HTuple.html">HTuple</a> <a href="#IfRootNotFound"><i>ifRootNotFound</i></a>, <a href="HTuple.html">HTuple</a> <a href="#IfComponentNotFound"><i>ifComponentNotFound</i></a>, <a href="HTuple.html">HTuple</a> <a href="#PosePrediction"><i>posePrediction</i></a>, <a href="HTuple.html">HTuple</a> <a href="#MinScoreComp"><i>minScoreComp</i></a>, <a href="HTuple.html">HTuple</a> <a href="#SubPixelComp"><i>subPixelComp</i></a>, <a href="HTuple.html">HTuple</a> <a href="#NumLevelsComp"><i>numLevelsComp</i></a>, <a href="HTuple.html">HTuple</a> <a href="#GreedinessComp"><i>greedinessComp</i></a>, out <a href="HTuple.html">HTuple</a> <a href="#ModelStart"><i>modelStart</i></a>, out <a href="HTuple.html">HTuple</a> <a href="#ModelEnd"><i>modelEnd</i></a>, out <a href="HTuple.html">HTuple</a> <a href="#Score"><i>score</i></a>, out <a href="HTuple.html">HTuple</a> <a href="#RowComp"><i>rowComp</i></a>, out <a href="HTuple.html">HTuple</a> <a href="#ColumnComp"><i>columnComp</i></a>, out <a href="HTuple.html">HTuple</a> <a href="#AngleComp"><i>angleComp</i></a>, out <a href="HTuple.html">HTuple</a> <a href="#ScoreComp"><i>scoreComp</i></a>, out <a href="HTuple.html">HTuple</a> <a href="#ModelComp"><i>modelComp</i></a>)</code></p>
<p>
<code><a href="HTuple.html">HTuple</a> <a href="HComponentModel.html">HComponentModel</a>.<b>FindComponentModel</b>(<a href="HImage.html">HImage</a> <a href="#Image"><i>image</i></a>, <a href="HTuple.html">HTuple</a> <a href="#RootComponent"><i>rootComponent</i></a>, <a href="HTuple.html">HTuple</a> <a href="#AngleStartRoot"><i>angleStartRoot</i></a>, <a href="HTuple.html">HTuple</a> <a href="#AngleExtentRoot"><i>angleExtentRoot</i></a>, double <a href="#MinScore"><i>minScore</i></a>, int <a href="#NumMatches"><i>numMatches</i></a>, double <a href="#MaxOverlap"><i>maxOverlap</i></a>, string <a href="#IfRootNotFound"><i>ifRootNotFound</i></a>, string <a href="#IfComponentNotFound"><i>ifComponentNotFound</i></a>, string <a href="#PosePrediction"><i>posePrediction</i></a>, <a href="HTuple.html">HTuple</a> <a href="#MinScoreComp"><i>minScoreComp</i></a>, <a href="HTuple.html">HTuple</a> <a href="#SubPixelComp"><i>subPixelComp</i></a>, <a href="HTuple.html">HTuple</a> <a href="#NumLevelsComp"><i>numLevelsComp</i></a>, <a href="HTuple.html">HTuple</a> <a href="#GreedinessComp"><i>greedinessComp</i></a>, out <a href="HTuple.html">HTuple</a> <a href="#ModelEnd"><i>modelEnd</i></a>, out <a href="HTuple.html">HTuple</a> <a href="#Score"><i>score</i></a>, out <a href="HTuple.html">HTuple</a> <a href="#RowComp"><i>rowComp</i></a>, out <a href="HTuple.html">HTuple</a> <a href="#ColumnComp"><i>columnComp</i></a>, out <a href="HTuple.html">HTuple</a> <a href="#AngleComp"><i>angleComp</i></a>, out <a href="HTuple.html">HTuple</a> <a href="#ScoreComp"><i>scoreComp</i></a>, out <a href="HTuple.html">HTuple</a> <a href="#ModelComp"><i>modelComp</i></a>)</code></p>
<p>
<code>int <a href="HComponentModel.html">HComponentModel</a>.<b>FindComponentModel</b>(<a href="HImage.html">HImage</a> <a href="#Image"><i>image</i></a>, int <a href="#RootComponent"><i>rootComponent</i></a>, double <a href="#AngleStartRoot"><i>angleStartRoot</i></a>, double <a href="#AngleExtentRoot"><i>angleExtentRoot</i></a>, double <a href="#MinScore"><i>minScore</i></a>, int <a href="#NumMatches"><i>numMatches</i></a>, double <a href="#MaxOverlap"><i>maxOverlap</i></a>, string <a href="#IfRootNotFound"><i>ifRootNotFound</i></a>, string <a href="#IfComponentNotFound"><i>ifComponentNotFound</i></a>, string <a href="#PosePrediction"><i>posePrediction</i></a>, double <a href="#MinScoreComp"><i>minScoreComp</i></a>, string <a href="#SubPixelComp"><i>subPixelComp</i></a>, int <a href="#NumLevelsComp"><i>numLevelsComp</i></a>, double <a href="#GreedinessComp"><i>greedinessComp</i></a>, out int <a href="#ModelEnd"><i>modelEnd</i></a>, out double <a href="#Score"><i>score</i></a>, out double <a href="#RowComp"><i>rowComp</i></a>, out double <a href="#ColumnComp"><i>columnComp</i></a>, out double <a href="#AngleComp"><i>angleComp</i></a>, out double <a href="#ScoreComp"><i>scoreComp</i></a>, out int <a href="#ModelComp"><i>modelComp</i></a>)</code></p>
<p>
<code><a href="HTuple.html">HTuple</a> <a href="HImage.html">HImage</a>.<b>FindComponentModel</b>(<a href="HComponentModel.html">HComponentModel</a> <a href="#ComponentModelID"><i>componentModelID</i></a>, <a href="HTuple.html">HTuple</a> <a href="#RootComponent"><i>rootComponent</i></a>, <a href="HTuple.html">HTuple</a> <a href="#AngleStartRoot"><i>angleStartRoot</i></a>, <a href="HTuple.html">HTuple</a> <a href="#AngleExtentRoot"><i>angleExtentRoot</i></a>, double <a href="#MinScore"><i>minScore</i></a>, int <a href="#NumMatches"><i>numMatches</i></a>, double <a href="#MaxOverlap"><i>maxOverlap</i></a>, string <a href="#IfRootNotFound"><i>ifRootNotFound</i></a>, string <a href="#IfComponentNotFound"><i>ifComponentNotFound</i></a>, string <a href="#PosePrediction"><i>posePrediction</i></a>, <a href="HTuple.html">HTuple</a> <a href="#MinScoreComp"><i>minScoreComp</i></a>, <a href="HTuple.html">HTuple</a> <a href="#SubPixelComp"><i>subPixelComp</i></a>, <a href="HTuple.html">HTuple</a> <a href="#NumLevelsComp"><i>numLevelsComp</i></a>, <a href="HTuple.html">HTuple</a> <a href="#GreedinessComp"><i>greedinessComp</i></a>, out <a href="HTuple.html">HTuple</a> <a href="#ModelEnd"><i>modelEnd</i></a>, out <a href="HTuple.html">HTuple</a> <a href="#Score"><i>score</i></a>, out <a href="HTuple.html">HTuple</a> <a href="#RowComp"><i>rowComp</i></a>, out <a href="HTuple.html">HTuple</a> <a href="#ColumnComp"><i>columnComp</i></a>, out <a href="HTuple.html">HTuple</a> <a href="#AngleComp"><i>angleComp</i></a>, out <a href="HTuple.html">HTuple</a> <a href="#ScoreComp"><i>scoreComp</i></a>, out <a href="HTuple.html">HTuple</a> <a href="#ModelComp"><i>modelComp</i></a>)</code></p>
<p>
<code>int <a href="HImage.html">HImage</a>.<b>FindComponentModel</b>(<a href="HComponentModel.html">HComponentModel</a> <a href="#ComponentModelID"><i>componentModelID</i></a>, int <a href="#RootComponent"><i>rootComponent</i></a>, double <a href="#AngleStartRoot"><i>angleStartRoot</i></a>, double <a href="#AngleExtentRoot"><i>angleExtentRoot</i></a>, double <a href="#MinScore"><i>minScore</i></a>, int <a href="#NumMatches"><i>numMatches</i></a>, double <a href="#MaxOverlap"><i>maxOverlap</i></a>, string <a href="#IfRootNotFound"><i>ifRootNotFound</i></a>, string <a href="#IfComponentNotFound"><i>ifComponentNotFound</i></a>, string <a href="#PosePrediction"><i>posePrediction</i></a>, double <a href="#MinScoreComp"><i>minScoreComp</i></a>, string <a href="#SubPixelComp"><i>subPixelComp</i></a>, int <a href="#NumLevelsComp"><i>numLevelsComp</i></a>, double <a href="#GreedinessComp"><i>greedinessComp</i></a>, out int <a href="#ModelEnd"><i>modelEnd</i></a>, out double <a href="#Score"><i>score</i></a>, out double <a href="#RowComp"><i>rowComp</i></a>, out double <a href="#ColumnComp"><i>columnComp</i></a>, out double <a href="#AngleComp"><i>angleComp</i></a>, out double <a href="#ScoreComp"><i>scoreComp</i></a>, out int <a href="#ModelComp"><i>modelComp</i></a>)</code></p>
</div>
<div data-if="python" style="display:none;">
<p>
<code>def <b>find_component_model</b>(<a href="#Image"><i>image</i></a>: HObject, <a href="#ComponentModelID"><i>component_model_id</i></a>: HHandle, <a href="#RootComponent"><i>root_component</i></a>: MaybeSequence[int], <a href="#AngleStartRoot"><i>angle_start_root</i></a>: MaybeSequence[float], <a href="#AngleExtentRoot"><i>angle_extent_root</i></a>: MaybeSequence[float], <a href="#MinScore"><i>min_score</i></a>: float, <a href="#NumMatches"><i>num_matches</i></a>: int, <a href="#MaxOverlap"><i>max_overlap</i></a>: float, <a href="#IfRootNotFound"><i>if_root_not_found</i></a>: str, <a href="#IfComponentNotFound"><i>if_component_not_found</i></a>: str, <a href="#PosePrediction"><i>pose_prediction</i></a>: str, <a href="#MinScoreComp"><i>min_score_comp</i></a>: MaybeSequence[float], <a href="#SubPixelComp"><i>sub_pixel_comp</i></a>: MaybeSequence[str], <a href="#NumLevelsComp"><i>num_levels_comp</i></a>: MaybeSequence[int], <a href="#GreedinessComp"><i>greediness_comp</i></a>: MaybeSequence[float]) -&gt; Tuple[Sequence[int], Sequence[int], Sequence[float], Sequence[float], Sequence[float], Sequence[float], Sequence[float], Sequence[int]]</code></p>
<p>
<code>def <b>find_component_model_s</b>(<a href="#Image"><i>image</i></a>: HObject, <a href="#ComponentModelID"><i>component_model_id</i></a>: HHandle, <a href="#RootComponent"><i>root_component</i></a>: MaybeSequence[int], <a href="#AngleStartRoot"><i>angle_start_root</i></a>: MaybeSequence[float], <a href="#AngleExtentRoot"><i>angle_extent_root</i></a>: MaybeSequence[float], <a href="#MinScore"><i>min_score</i></a>: float, <a href="#NumMatches"><i>num_matches</i></a>: int, <a href="#MaxOverlap"><i>max_overlap</i></a>: float, <a href="#IfRootNotFound"><i>if_root_not_found</i></a>: str, <a href="#IfComponentNotFound"><i>if_component_not_found</i></a>: str, <a href="#PosePrediction"><i>pose_prediction</i></a>: str, <a href="#MinScoreComp"><i>min_score_comp</i></a>: MaybeSequence[float], <a href="#SubPixelComp"><i>sub_pixel_comp</i></a>: MaybeSequence[str], <a href="#NumLevelsComp"><i>num_levels_comp</i></a>: MaybeSequence[int], <a href="#GreedinessComp"><i>greediness_comp</i></a>: MaybeSequence[float]) -&gt; Tuple[int, int, float, float, float, float, float, int]</code></p>
</div>
<h2 id="sec_description">描述</h2>
<p>该算子 <code><span data-if="hdevelop" style="display:inline">find_component_model</span><span data-if="c" style="display:none">find_component_model</span><span data-if="cpp" style="display:none">FindComponentModel</span><span data-if="com" style="display:none">FindComponentModel</span><span data-if="dotnet" style="display:none">FindComponentModel</span><span data-if="python" style="display:none">find_component_model</span></code> finds the best
<a href="#NumMatches"><i><code><span data-if="hdevelop" style="display:inline">NumMatches</span><span data-if="c" style="display:none">NumMatches</span><span data-if="cpp" style="display:none">NumMatches</span><span data-if="com" style="display:none">NumMatches</span><span data-if="dotnet" style="display:none">numMatches</span><span data-if="python" style="display:none">num_matches</span></code></i></a> instances of the component model
<a href="#ComponentModelID"><i><code><span data-if="hdevelop" style="display:inline">ComponentModelID</span><span data-if="c" style="display:none">ComponentModelID</span><span data-if="cpp" style="display:none">ComponentModelID</span><span data-if="com" style="display:none">ComponentModelID</span><span data-if="dotnet" style="display:none">componentModelID</span><span data-if="python" style="display:none">component_model_id</span></code></i></a> in the input image <a href="#Image"><i><code><span data-if="hdevelop" style="display:inline">Image</span><span data-if="c" style="display:none">Image</span><span data-if="cpp" style="display:none">Image</span><span data-if="com" style="display:none">Image</span><span data-if="dotnet" style="display:none">image</span><span data-if="python" style="display:none">image</span></code></i></a>.
</p>
<p>The result of the search can be visualized using
<a href="get_found_component_model.html"><code><span data-if="hdevelop" style="display:inline">get_found_component_model</span><span data-if="c" style="display:none">get_found_component_model</span><span data-if="cpp" style="display:none">GetFoundComponentModel</span><span data-if="com" style="display:none">GetFoundComponentModel</span><span data-if="dotnet" style="display:none">GetFoundComponentModel</span><span data-if="python" style="display:none">get_found_component_model</span></code></a>.
Also 该算子 can be used to extract the component matches
of a certain component model instance.
</p>
<h3>Further information about input parameters</h3>
<dl class="generic">

<dt><b><a href="#ComponentModelID"><i><code><span data-if="hdevelop" style="display:inline">ComponentModelID</span><span data-if="c" style="display:none">ComponentModelID</span><span data-if="cpp" style="display:none">ComponentModelID</span><span data-if="com" style="display:none">ComponentModelID</span><span data-if="dotnet" style="display:none">componentModelID</span><span data-if="python" style="display:none">component_model_id</span></code></i></a>:</b></dt>
<dd>
<p>

Handle of the component model.
</p>
<p>The model must have been created previously by calling
<a href="create_trained_component_model.html"><code><span data-if="hdevelop" style="display:inline">create_trained_component_model</span><span data-if="c" style="display:none">create_trained_component_model</span><span data-if="cpp" style="display:none">CreateTrainedComponentModel</span><span data-if="com" style="display:none">CreateTrainedComponentModel</span><span data-if="dotnet" style="display:none">CreateTrainedComponentModel</span><span data-if="python" style="display:none">create_trained_component_model</span></code></a> or
<a href="create_component_model.html"><code><span data-if="hdevelop" style="display:inline">create_component_model</span><span data-if="c" style="display:none">create_component_model</span><span data-if="cpp" style="display:none">CreateComponentModel</span><span data-if="com" style="display:none">CreateComponentModel</span><span data-if="dotnet" style="display:none">CreateComponentModel</span><span data-if="python" style="display:none">create_component_model</span></code></a>, or read in using
<a href="read_component_model.html"><code><span data-if="hdevelop" style="display:inline">read_component_model</span><span data-if="c" style="display:none">read_component_model</span><span data-if="cpp" style="display:none">ReadComponentModel</span><span data-if="com" style="display:none">ReadComponentModel</span><span data-if="dotnet" style="display:none">ReadComponentModel</span><span data-if="python" style="display:none">read_component_model</span></code></a>.
</p>
</dd>

<dt><b><a href="#RootComponent"><i><code><span data-if="hdevelop" style="display:inline">RootComponent</span><span data-if="c" style="display:none">RootComponent</span><span data-if="cpp" style="display:none">RootComponent</span><span data-if="com" style="display:none">RootComponent</span><span data-if="dotnet" style="display:none">rootComponent</span><span data-if="python" style="display:none">root_component</span></code></i></a>:</b></dt>
<dd>
<p>

Index of the root component.
</p>
<p>The components of the component model <a href="#ComponentModelID"><i><code><span data-if="hdevelop" style="display:inline">ComponentModelID</span><span data-if="c" style="display:none">ComponentModelID</span><span data-if="cpp" style="display:none">ComponentModelID</span><span data-if="com" style="display:none">ComponentModelID</span><span data-if="dotnet" style="display:none">componentModelID</span><span data-if="python" style="display:none">component_model_id</span></code></i></a> are
represented in a tree structure. The component that stands at the
root of this search tree is the root component.
</p>
<p>The root component is searched within the full search space,
i.e., at all allowed positions and in the allowed
range of orientations (see below).
In contrast, the remaining components are searched relative to the pose
of their predecessor in the search tree within a restricted search space
that is computed from the relations (recursive search).
</p>
<p>To what extent a model component is suited to act as root component depends
on several factors. In principle, a model component that can be found
in the image with a high probability, should be chosen. Therefore, a
component that is sometimes occluded to a high degree or that is
missing in some cases is not well suited to act as root
component.
For the behavior in such cases, see the entry <a href="#IfRootNotFound"><i><code><span data-if="hdevelop" style="display:inline">IfRootNotFound</span><span data-if="c" style="display:none">IfRootNotFound</span><span data-if="cpp" style="display:none">IfRootNotFound</span><span data-if="com" style="display:none">IfRootNotFound</span><span data-if="dotnet" style="display:none">ifRootNotFound</span><span data-if="python" style="display:none">if_root_not_found</span></code></i></a>
below.</p>
<p>
A different possible criterion is the computation time
that is associated with the root component during the search.
A ranking of the model components that is
based on the latter criterion is returned in <code><span data-if="hdevelop" style="display:inline">RootRanking</span><span data-if="c" style="display:none">RootRanking</span><span data-if="cpp" style="display:none">RootRanking</span><span data-if="com" style="display:none">RootRanking</span><span data-if="dotnet" style="display:none">rootRanking</span><span data-if="python" style="display:none">root_ranking</span></code>
of 该算子 <a href="create_trained_component_model.html"><code><span data-if="hdevelop" style="display:inline">create_trained_component_model</span><span data-if="c" style="display:none">create_trained_component_model</span><span data-if="cpp" style="display:none">CreateTrainedComponentModel</span><span data-if="com" style="display:none">CreateTrainedComponentModel</span><span data-if="dotnet" style="display:none">CreateTrainedComponentModel</span><span data-if="python" style="display:none">create_trained_component_model</span></code></a> or
<a href="create_component_model.html"><code><span data-if="hdevelop" style="display:inline">create_component_model</span><span data-if="c" style="display:none">create_component_model</span><span data-if="cpp" style="display:none">CreateComponentModel</span><span data-if="com" style="display:none">CreateComponentModel</span><span data-if="dotnet" style="display:none">CreateComponentModel</span><span data-if="python" style="display:none">create_component_model</span></code></a>, respectively.
If the complete ranking is passed in <a href="#RootComponent"><i><code><span data-if="hdevelop" style="display:inline">RootComponent</span><span data-if="c" style="display:none">RootComponent</span><span data-if="cpp" style="display:none">RootComponent</span><span data-if="com" style="display:none">RootComponent</span><span data-if="dotnet" style="display:none">rootComponent</span><span data-if="python" style="display:none">root_component</span></code></i></a>,
the first value <a href="#RootComponent"><i><code><span data-if="hdevelop" style="display:inline">RootComponent</span><span data-if="c" style="display:none">RootComponent</span><span data-if="cpp" style="display:none">RootComponent</span><span data-if="com" style="display:none">RootComponent</span><span data-if="dotnet" style="display:none">rootComponent</span><span data-if="python" style="display:none">root_component</span></code></i></a>[0] is automatically selected
as the root component.
</p>
</dd>

<dt><b><a href="#AngleStartRoot"><i><code><span data-if="hdevelop" style="display:inline">AngleStartRoot</span><span data-if="c" style="display:none">AngleStartRoot</span><span data-if="cpp" style="display:none">AngleStartRoot</span><span data-if="com" style="display:none">AngleStartRoot</span><span data-if="dotnet" style="display:none">angleStartRoot</span><span data-if="python" style="display:none">angle_start_root</span></code></i></a> and <a href="#AngleExtentRoot"><i><code><span data-if="hdevelop" style="display:inline">AngleExtentRoot</span><span data-if="c" style="display:none">AngleExtentRoot</span><span data-if="cpp" style="display:none">AngleExtentRoot</span><span data-if="com" style="display:none">AngleExtentRoot</span><span data-if="dotnet" style="display:none">angleExtentRoot</span><span data-if="python" style="display:none">angle_extent_root</span></code></i></a>:</b></dt>
<dd>
<p>

Specify the allowed angle range (in [rad]) within which the root
component is searched.
</p>
<p>If necessary, the range of rotations
is clipped to the range given when the component model was created
with <a href="create_trained_component_model.html"><code><span data-if="hdevelop" style="display:inline">create_trained_component_model</span><span data-if="c" style="display:none">create_trained_component_model</span><span data-if="cpp" style="display:none">CreateTrainedComponentModel</span><span data-if="com" style="display:none">CreateTrainedComponentModel</span><span data-if="dotnet" style="display:none">CreateTrainedComponentModel</span><span data-if="python" style="display:none">create_trained_component_model</span></code></a> or
<a href="create_component_model.html"><code><span data-if="hdevelop" style="display:inline">create_component_model</span><span data-if="c" style="display:none">create_component_model</span><span data-if="cpp" style="display:none">CreateComponentModel</span><span data-if="com" style="display:none">CreateComponentModel</span><span data-if="dotnet" style="display:none">CreateComponentModel</span><span data-if="python" style="display:none">create_component_model</span></code></a>, respectively.
The angle range for each component can be queried with
<a href="get_shape_model_params.html"><code><span data-if="hdevelop" style="display:inline">get_shape_model_params</span><span data-if="c" style="display:none">get_shape_model_params</span><span data-if="cpp" style="display:none">GetShapeModelParams</span><span data-if="com" style="display:none">GetShapeModelParams</span><span data-if="dotnet" style="display:none">GetShapeModelParams</span><span data-if="python" style="display:none">get_shape_model_params</span></code></a>.
The necessary handle of the corresponding shape model can be obtained using
<a href="get_component_model_params.html"><code><span data-if="hdevelop" style="display:inline">get_component_model_params</span><span data-if="c" style="display:none">get_component_model_params</span><span data-if="cpp" style="display:none">GetComponentModelParams</span><span data-if="com" style="display:none">GetComponentModelParams</span><span data-if="dotnet" style="display:none">GetComponentModelParams</span><span data-if="python" style="display:none">get_component_model_params</span></code></a>.
</p>
</dd>

<dt><b><a href="#MinScore"><i><code><span data-if="hdevelop" style="display:inline">MinScore</span><span data-if="c" style="display:none">MinScore</span><span data-if="cpp" style="display:none">MinScore</span><span data-if="com" style="display:none">MinScore</span><span data-if="dotnet" style="display:none">minScore</span><span data-if="python" style="display:none">min_score</span></code></i></a>:</b></dt>
<dd>
<p>

Determines what score a potential match of the component model must at
least have to be regarded as an instance.
</p>
<p>If the component model can be expected never to be occluded in the images,
<a href="#MinScore"><i><code><span data-if="hdevelop" style="display:inline">MinScore</span><span data-if="c" style="display:none">MinScore</span><span data-if="cpp" style="display:none">MinScore</span><span data-if="com" style="display:none">MinScore</span><span data-if="dotnet" style="display:none">minScore</span><span data-if="python" style="display:none">min_score</span></code></i></a> may be set as high as <i>0.8</i> or even <i>0.9</i>.
The value of this parameter only slightly influences the computation time.
An exception is the case of <a href="#IfRootNotFound"><i><code><span data-if="hdevelop" style="display:inline">IfRootNotFound</span><span data-if="c" style="display:none">IfRootNotFound</span><span data-if="cpp" style="display:none">IfRootNotFound</span><span data-if="com" style="display:none">IfRootNotFound</span><span data-if="dotnet" style="display:none">ifRootNotFound</span><span data-if="python" style="display:none">if_root_not_found</span></code></i></a> set to
<i><span data-if="hdevelop" style="display:inline">'select_new_root'</span><span data-if="c" style="display:none">"select_new_root"</span><span data-if="cpp" style="display:none">"select_new_root"</span><span data-if="com" style="display:none">"select_new_root"</span><span data-if="dotnet" style="display:none">"select_new_root"</span><span data-if="python" style="display:none">"select_new_root"</span></i> (see below).
</p>
</dd>

<dt><b><a href="#NumMatches"><i><code><span data-if="hdevelop" style="display:inline">NumMatches</span><span data-if="c" style="display:none">NumMatches</span><span data-if="cpp" style="display:none">NumMatches</span><span data-if="com" style="display:none">NumMatches</span><span data-if="dotnet" style="display:none">numMatches</span><span data-if="python" style="display:none">num_matches</span></code></i></a>:</b></dt>
<dd>
<p>

Determines the maximum number of returned instances.
</p>
<p>If fewer than <a href="#NumMatches"><i><code><span data-if="hdevelop" style="display:inline">NumMatches</span><span data-if="c" style="display:none">NumMatches</span><span data-if="cpp" style="display:none">NumMatches</span><span data-if="com" style="display:none">NumMatches</span><span data-if="dotnet" style="display:none">numMatches</span><span data-if="python" style="display:none">num_matches</span></code></i></a> are found, only that number is
returned, i.e., the parameter <a href="#MinScore"><i><code><span data-if="hdevelop" style="display:inline">MinScore</span><span data-if="c" style="display:none">MinScore</span><span data-if="cpp" style="display:none">MinScore</span><span data-if="com" style="display:none">MinScore</span><span data-if="dotnet" style="display:none">minScore</span><span data-if="python" style="display:none">min_score</span></code></i></a> takes precedence
over <a href="#NumMatches"><i><code><span data-if="hdevelop" style="display:inline">NumMatches</span><span data-if="c" style="display:none">NumMatches</span><span data-if="cpp" style="display:none">NumMatches</span><span data-if="com" style="display:none">NumMatches</span><span data-if="dotnet" style="display:none">numMatches</span><span data-if="python" style="display:none">num_matches</span></code></i></a>.
In case more than <a href="#NumMatches"><i><code><span data-if="hdevelop" style="display:inline">NumMatches</span><span data-if="c" style="display:none">NumMatches</span><span data-if="cpp" style="display:none">NumMatches</span><span data-if="com" style="display:none">NumMatches</span><span data-if="dotnet" style="display:none">numMatches</span><span data-if="python" style="display:none">num_matches</span></code></i></a> instances with a score greater than
<a href="#MinScore"><i><code><span data-if="hdevelop" style="display:inline">MinScore</span><span data-if="c" style="display:none">MinScore</span><span data-if="cpp" style="display:none">MinScore</span><span data-if="com" style="display:none">MinScore</span><span data-if="dotnet" style="display:none">minScore</span><span data-if="python" style="display:none">min_score</span></code></i></a> are found in the image, only the best
<a href="#NumMatches"><i><code><span data-if="hdevelop" style="display:inline">NumMatches</span><span data-if="c" style="display:none">NumMatches</span><span data-if="cpp" style="display:none">NumMatches</span><span data-if="com" style="display:none">NumMatches</span><span data-if="dotnet" style="display:none">numMatches</span><span data-if="python" style="display:none">num_matches</span></code></i></a> instances are returned.
However, if all model instances exceeding <a href="#MinScore"><i><code><span data-if="hdevelop" style="display:inline">MinScore</span><span data-if="c" style="display:none">MinScore</span><span data-if="cpp" style="display:none">MinScore</span><span data-if="com" style="display:none">MinScore</span><span data-if="dotnet" style="display:none">minScore</span><span data-if="python" style="display:none">min_score</span></code></i></a> in the image
should be found, <a href="#NumMatches"><i><code><span data-if="hdevelop" style="display:inline">NumMatches</span><span data-if="c" style="display:none">NumMatches</span><span data-if="cpp" style="display:none">NumMatches</span><span data-if="com" style="display:none">NumMatches</span><span data-if="dotnet" style="display:none">numMatches</span><span data-if="python" style="display:none">num_matches</span></code></i></a> must be set to <i>0</i>.
</p>
</dd>

<dt><b><a href="#MaxOverlap"><i><code><span data-if="hdevelop" style="display:inline">MaxOverlap</span><span data-if="c" style="display:none">MaxOverlap</span><span data-if="cpp" style="display:none">MaxOverlap</span><span data-if="com" style="display:none">MaxOverlap</span><span data-if="dotnet" style="display:none">maxOverlap</span><span data-if="python" style="display:none">max_overlap</span></code></i></a>:</b></dt>
<dd>
<p>

Determines by what fraction two instances may at most overlap,
whereby this fraction is a number between 0 and 1.
</p>
<p>In some cases, found instances only differ in the pose of one or a few
components.
If two instances overlap each other by more than
<a href="#MaxOverlap"><i><code><span data-if="hdevelop" style="display:inline">MaxOverlap</span><span data-if="c" style="display:none">MaxOverlap</span><span data-if="cpp" style="display:none">MaxOverlap</span><span data-if="com" style="display:none">MaxOverlap</span><span data-if="dotnet" style="display:none">maxOverlap</span><span data-if="python" style="display:none">max_overlap</span></code></i></a> only the best instance is returned.
This means, for <a href="#MaxOverlap"><i><code><span data-if="hdevelop" style="display:inline">MaxOverlap</span><span data-if="c" style="display:none">MaxOverlap</span><span data-if="cpp" style="display:none">MaxOverlap</span><span data-if="com" style="display:none">MaxOverlap</span><span data-if="dotnet" style="display:none">maxOverlap</span><span data-if="python" style="display:none">max_overlap</span></code></i></a> = <i>0</i>, the found instances may
not overlap at all, while for <a href="#MaxOverlap"><i><code><span data-if="hdevelop" style="display:inline">MaxOverlap</span><span data-if="c" style="display:none">MaxOverlap</span><span data-if="cpp" style="display:none">MaxOverlap</span><span data-if="com" style="display:none">MaxOverlap</span><span data-if="dotnet" style="display:none">maxOverlap</span><span data-if="python" style="display:none">max_overlap</span></code></i></a> = <i>1</i> no check for
overlap is performed, and hence all instances are returned.
The calculation of the overlap is based on the smallest enclosing
rectangles of arbitrary orientation (see <a href="smallest_rectangle2.html"><code><span data-if="hdevelop" style="display:inline">smallest_rectangle2</span><span data-if="c" style="display:none">smallest_rectangle2</span><span data-if="cpp" style="display:none">SmallestRectangle2</span><span data-if="com" style="display:none">SmallestRectangle2</span><span data-if="dotnet" style="display:none">SmallestRectangle2</span><span data-if="python" style="display:none">smallest_rectangle2</span></code></a>)
of the found component instances.
</p>
</dd>

<dt><b><a href="#IfRootNotFound"><i><code><span data-if="hdevelop" style="display:inline">IfRootNotFound</span><span data-if="c" style="display:none">IfRootNotFound</span><span data-if="cpp" style="display:none">IfRootNotFound</span><span data-if="com" style="display:none">IfRootNotFound</span><span data-if="dotnet" style="display:none">ifRootNotFound</span><span data-if="python" style="display:none">if_root_not_found</span></code></i></a>:</b></dt>
<dd>
<p>

specifies the behavior of 该算子 when dealing with
a missing or strongly occluded root component.
</p>
<p>Possible values:
</p>
<ul>
<li>
<p> <i><span data-if="hdevelop" style="display:inline">'stop_search'</span><span data-if="c" style="display:none">"stop_search"</span><span data-if="cpp" style="display:none">"stop_search"</span><span data-if="com" style="display:none">"stop_search"</span><span data-if="dotnet" style="display:none">"stop_search"</span><span data-if="python" style="display:none">"stop_search"</span></i>:
It is assumed that the root component is always found in the image.
Consequently, for instances for which the root component could not
be found the search for the remaining components is not continued.
</p>
</li>
<li>
<p> <i><span data-if="hdevelop" style="display:inline">'select_new_root'</span><span data-if="c" style="display:none">"select_new_root"</span><span data-if="cpp" style="display:none">"select_new_root"</span><span data-if="com" style="display:none">"select_new_root"</span><span data-if="dotnet" style="display:none">"select_new_root"</span><span data-if="python" style="display:none">"select_new_root"</span></i>:
Different components are successively chosen as the root component
and searched within the full search space.
The order in which the selection of the root component is performed
corresponds to the order passed in <code><span data-if="hdevelop" style="display:inline">RootRanking</span><span data-if="c" style="display:none">RootRanking</span><span data-if="cpp" style="display:none">RootRanking</span><span data-if="com" style="display:none">RootRanking</span><span data-if="dotnet" style="display:none">rootRanking</span><span data-if="python" style="display:none">root_ranking</span></code>.
The poses of the found instances of all root components are then used
to start the recursive search for the remaining components.
Hence, it is possible to find instances even if the original root
component is not found.
However, the computation time of the search increases significantly
in comparison to the search when choosing <i><span data-if="hdevelop" style="display:inline">'stop_search'</span><span data-if="c" style="display:none">"stop_search"</span><span data-if="cpp" style="display:none">"stop_search"</span><span data-if="com" style="display:none">"stop_search"</span><span data-if="dotnet" style="display:none">"stop_search"</span><span data-if="python" style="display:none">"stop_search"</span></i>.
This is especially the case for small values of <a href="#MinScore"><i><code><span data-if="hdevelop" style="display:inline">MinScore</span><span data-if="c" style="display:none">MinScore</span><span data-if="cpp" style="display:none">MinScore</span><span data-if="com" style="display:none">MinScore</span><span data-if="dotnet" style="display:none">minScore</span><span data-if="python" style="display:none">min_score</span></code></i></a>,
as more root components must be searched.
If during the search more root components are needed as given in
<a href="#RootComponent"><i><code><span data-if="hdevelop" style="display:inline">RootComponent</span><span data-if="c" style="display:none">RootComponent</span><span data-if="cpp" style="display:none">RootComponent</span><span data-if="com" style="display:none">RootComponent</span><span data-if="dotnet" style="display:none">rootComponent</span><span data-if="python" style="display:none">root_component</span></code></i></a>, the root components are completed by
the automatically computed order
(see <a href="create_trained_component_model.html"><code><span data-if="hdevelop" style="display:inline">create_trained_component_model</span><span data-if="c" style="display:none">create_trained_component_model</span><span data-if="cpp" style="display:none">CreateTrainedComponentModel</span><span data-if="com" style="display:none">CreateTrainedComponentModel</span><span data-if="dotnet" style="display:none">CreateTrainedComponentModel</span><span data-if="python" style="display:none">create_trained_component_model</span></code></a> or
<a href="create_component_model.html"><code><span data-if="hdevelop" style="display:inline">create_component_model</span><span data-if="c" style="display:none">create_component_model</span><span data-if="cpp" style="display:none">CreateComponentModel</span><span data-if="com" style="display:none">CreateComponentModel</span><span data-if="dotnet" style="display:none">CreateComponentModel</span><span data-if="python" style="display:none">create_component_model</span></code></a>).
</p>
</li>
</ul>

</dd>

<dt><b><a href="#IfComponentNotFound"><i><code><span data-if="hdevelop" style="display:inline">IfComponentNotFound</span><span data-if="c" style="display:none">IfComponentNotFound</span><span data-if="cpp" style="display:none">IfComponentNotFound</span><span data-if="com" style="display:none">IfComponentNotFound</span><span data-if="dotnet" style="display:none">ifComponentNotFound</span><span data-if="python" style="display:none">if_component_not_found</span></code></i></a>:</b></dt>
<dd>
<p>

Specifies how components are searched when the predecessor component
was not found (e.g., because she is missing or strongly occluded).
</p>
<p>Possible values:
</p>
<ul>
<li>
<p> <i><span data-if="hdevelop" style="display:inline">'prune_branch'</span><span data-if="c" style="display:none">"prune_branch"</span><span data-if="cpp" style="display:none">"prune_branch"</span><span data-if="com" style="display:none">"prune_branch"</span><span data-if="dotnet" style="display:none">"prune_branch"</span><span data-if="python" style="display:none">"prune_branch"</span></i>:
Such components are not searched at all and are also treated as
'not found'.
</p>
</li>
<li>
<p> <i><span data-if="hdevelop" style="display:inline">'search_from_upper'</span><span data-if="c" style="display:none">"search_from_upper"</span><span data-if="cpp" style="display:none">"search_from_upper"</span><span data-if="com" style="display:none">"search_from_upper"</span><span data-if="dotnet" style="display:none">"search_from_upper"</span><span data-if="python" style="display:none">"search_from_upper"</span></i>:
Such components are searched relative to the pose of the predecessor
component of the predecessor component.
</p>
</li>
<li>
<p> <i><span data-if="hdevelop" style="display:inline">'search_from_best'</span><span data-if="c" style="display:none">"search_from_best"</span><span data-if="cpp" style="display:none">"search_from_best"</span><span data-if="com" style="display:none">"search_from_best"</span><span data-if="dotnet" style="display:none">"search_from_best"</span><span data-if="python" style="display:none">"search_from_best"</span></i>:
Such components are searched relative to the pose of the already found
component from which the relative search can be performed with minimum
computational effort.
</p>
</li>
</ul>

</dd>

<dt><b><a href="#PosePrediction"><i><code><span data-if="hdevelop" style="display:inline">PosePrediction</span><span data-if="c" style="display:none">PosePrediction</span><span data-if="cpp" style="display:none">PosePrediction</span><span data-if="com" style="display:none">PosePrediction</span><span data-if="dotnet" style="display:none">posePrediction</span><span data-if="python" style="display:none">pose_prediction</span></code></i></a>:</b></dt>
<dd>
<p>

Determines whether the pose of not found components should be estimated.
</p>
<p>Possible values:
</p>
<ul>
<li>
<p> <i><span data-if="hdevelop" style="display:inline">'none'</span><span data-if="c" style="display:none">"none"</span><span data-if="cpp" style="display:none">"none"</span><span data-if="com" style="display:none">"none"</span><span data-if="dotnet" style="display:none">"none"</span><span data-if="python" style="display:none">"none"</span></i>:
Only the poses of the found components are returned.
</p>
</li>
<li>
<p> <i><span data-if="hdevelop" style="display:inline">'from_neighbors'</span><span data-if="c" style="display:none">"from_neighbors"</span><span data-if="cpp" style="display:none">"from_neighbors"</span><span data-if="com" style="display:none">"from_neighbors"</span><span data-if="dotnet" style="display:none">"from_neighbors"</span><span data-if="python" style="display:none">"from_neighbors"</span></i>:
The poses of not found components are estimated and returned with a score
of <a href="#ScoreComp"><i><code><span data-if="hdevelop" style="display:inline">ScoreComp</span><span data-if="c" style="display:none">ScoreComp</span><span data-if="cpp" style="display:none">ScoreComp</span><span data-if="com" style="display:none">ScoreComp</span><span data-if="dotnet" style="display:none">scoreComp</span><span data-if="python" style="display:none">score_comp</span></code></i></a> = <i>0.0</i>.
The pose estimation is based on the poses of the found neighboring
components in the search tree.
</p>
</li>
<li>
<p> <i><span data-if="hdevelop" style="display:inline">'from_all'</span><span data-if="c" style="display:none">"from_all"</span><span data-if="cpp" style="display:none">"from_all"</span><span data-if="com" style="display:none">"from_all"</span><span data-if="dotnet" style="display:none">"from_all"</span><span data-if="python" style="display:none">"from_all"</span></i>:
The poses of not found components are estimated and returned with a score
of <a href="#ScoreComp"><i><code><span data-if="hdevelop" style="display:inline">ScoreComp</span><span data-if="c" style="display:none">ScoreComp</span><span data-if="cpp" style="display:none">ScoreComp</span><span data-if="com" style="display:none">ScoreComp</span><span data-if="dotnet" style="display:none">scoreComp</span><span data-if="python" style="display:none">score_comp</span></code></i></a> = <i>0.0</i>.
The pose estimation is based on the poses of all found components.
</p>
</li>
</ul>

</dd>

<dt><b><a href="#MinScoreComp"><i><code><span data-if="hdevelop" style="display:inline">MinScoreComp</span><span data-if="c" style="display:none">MinScoreComp</span><span data-if="cpp" style="display:none">MinScoreComp</span><span data-if="com" style="display:none">MinScoreComp</span><span data-if="dotnet" style="display:none">minScoreComp</span><span data-if="python" style="display:none">min_score_comp</span></code></i></a>:</b></dt>
<dd>
<p>

Minimal necessary score of the components for the instances to be found.
</p>
<p>This parameter has the same meaning as <code><span data-if="hdevelop" style="display:inline">MinScore</span><span data-if="c" style="display:none">MinScore</span><span data-if="cpp" style="display:none">MinScore</span><span data-if="com" style="display:none">MinScore</span><span data-if="dotnet" style="display:none">minScore</span><span data-if="python" style="display:none">min_score</span></code> in
<a href="find_shape_model.html"><code><span data-if="hdevelop" style="display:inline">find_shape_model</span><span data-if="c" style="display:none">find_shape_model</span><span data-if="cpp" style="display:none">FindShapeModel</span><span data-if="com" style="display:none">FindShapeModel</span><span data-if="dotnet" style="display:none">FindShapeModel</span><span data-if="python" style="display:none">find_shape_model</span></code></a>.</p>
<p>
Settable is either one element or the same number of elements as model
components in <a href="#ComponentModelID"><i><code><span data-if="hdevelop" style="display:inline">ComponentModelID</span><span data-if="c" style="display:none">ComponentModelID</span><span data-if="cpp" style="display:none">ComponentModelID</span><span data-if="com" style="display:none">ComponentModelID</span><span data-if="dotnet" style="display:none">componentModelID</span><span data-if="python" style="display:none">component_model_id</span></code></i></a>.
In the first case the parameter is used for all components.
In the second case, each parameter element refers to the corresponding
component in <a href="#ComponentModelID"><i><code><span data-if="hdevelop" style="display:inline">ComponentModelID</span><span data-if="c" style="display:none">ComponentModelID</span><span data-if="cpp" style="display:none">ComponentModelID</span><span data-if="com" style="display:none">ComponentModelID</span><span data-if="dotnet" style="display:none">componentModelID</span><span data-if="python" style="display:none">component_model_id</span></code></i></a>.
</p>
</dd>

<dt><b><a href="#SubPixelComp"><i><code><span data-if="hdevelop" style="display:inline">SubPixelComp</span><span data-if="c" style="display:none">SubPixelComp</span><span data-if="cpp" style="display:none">SubPixelComp</span><span data-if="com" style="display:none">SubPixelComp</span><span data-if="dotnet" style="display:none">subPixelComp</span><span data-if="python" style="display:none">sub_pixel_comp</span></code></i></a>:</b></dt>
<dd>
<p>

Determines whether the extraction shall be done subpixel precise
and in the given case the maximal allowed object deformation in pixels.
</p>
<p>This parameter has the same meaning as <code><span data-if="hdevelop" style="display:inline">SubPixel</span><span data-if="c" style="display:none">SubPixel</span><span data-if="cpp" style="display:none">SubPixel</span><span data-if="com" style="display:none">SubPixel</span><span data-if="dotnet" style="display:none">subPixel</span><span data-if="python" style="display:none">sub_pixel</span></code> in
<a href="find_shape_model.html"><code><span data-if="hdevelop" style="display:inline">find_shape_model</span><span data-if="c" style="display:none">find_shape_model</span><span data-if="cpp" style="display:none">FindShapeModel</span><span data-if="com" style="display:none">FindShapeModel</span><span data-if="dotnet" style="display:none">FindShapeModel</span><span data-if="python" style="display:none">find_shape_model</span></code></a>.
Therefore the maximal allowed object deformation has to be given as
integer in the same string.
Settable is either one element or the same number of elements as model
components in <a href="#ComponentModelID"><i><code><span data-if="hdevelop" style="display:inline">ComponentModelID</span><span data-if="c" style="display:none">ComponentModelID</span><span data-if="cpp" style="display:none">ComponentModelID</span><span data-if="com" style="display:none">ComponentModelID</span><span data-if="dotnet" style="display:none">componentModelID</span><span data-if="python" style="display:none">component_model_id</span></code></i></a>.
In the first case the parameter is used for all components.
In the second case, each parameter element refers to the corresponding
component in <a href="#ComponentModelID"><i><code><span data-if="hdevelop" style="display:inline">ComponentModelID</span><span data-if="c" style="display:none">ComponentModelID</span><span data-if="cpp" style="display:none">ComponentModelID</span><span data-if="com" style="display:none">ComponentModelID</span><span data-if="dotnet" style="display:none">componentModelID</span><span data-if="python" style="display:none">component_model_id</span></code></i></a>.</p>
<p>
<i>Example:</i> <i><span data-if="hdevelop" style="display:inline">['least_squares', 'max_deformation 2']</span><span data-if="c" style="display:none">["least_squares", "max_deformation 2"]</span><span data-if="cpp" style="display:none">["least_squares", "max_deformation 2"]</span><span data-if="com" style="display:none">["least_squares", "max_deformation 2"]</span><span data-if="dotnet" style="display:none">["least_squares", "max_deformation 2"]</span><span data-if="python" style="display:none">["least_squares", "max_deformation 2"]</span></i>.
</p>
</dd>

<dt><b><a href="#NumLevelsComp"><i><code><span data-if="hdevelop" style="display:inline">NumLevelsComp</span><span data-if="c" style="display:none">NumLevelsComp</span><span data-if="cpp" style="display:none">NumLevelsComp</span><span data-if="com" style="display:none">NumLevelsComp</span><span data-if="dotnet" style="display:none">numLevelsComp</span><span data-if="python" style="display:none">num_levels_comp</span></code></i></a>:</b></dt>
<dd>


<p>Determine the pyramid levels for the components used in the matching.
</p>
<p>This parameter has the same meaning as <code><span data-if="hdevelop" style="display:inline">NumLevels</span><span data-if="c" style="display:none">NumLevels</span><span data-if="cpp" style="display:none">NumLevels</span><span data-if="com" style="display:none">NumLevels</span><span data-if="dotnet" style="display:none">numLevels</span><span data-if="python" style="display:none">num_levels</span></code> in
<a href="find_shape_model.html"><code><span data-if="hdevelop" style="display:inline">find_shape_model</span><span data-if="c" style="display:none">find_shape_model</span><span data-if="cpp" style="display:none">FindShapeModel</span><span data-if="com" style="display:none">FindShapeModel</span><span data-if="dotnet" style="display:none">FindShapeModel</span><span data-if="python" style="display:none">find_shape_model</span></code></a>.</p>
<p>
It determines the number of pyramid levels for the components
to be used in the matching.
Settable is either one element or the same number of elements as model
components in <a href="#ComponentModelID"><i><code><span data-if="hdevelop" style="display:inline">ComponentModelID</span><span data-if="c" style="display:none">ComponentModelID</span><span data-if="cpp" style="display:none">ComponentModelID</span><span data-if="com" style="display:none">ComponentModelID</span><span data-if="dotnet" style="display:none">componentModelID</span><span data-if="python" style="display:none">component_model_id</span></code></i></a>.
In the first case the parameter is used for all components.
In the second case, each parameter element refers to the corresponding
component in <a href="#ComponentModelID"><i><code><span data-if="hdevelop" style="display:inline">ComponentModelID</span><span data-if="c" style="display:none">ComponentModelID</span><span data-if="cpp" style="display:none">ComponentModelID</span><span data-if="com" style="display:none">ComponentModelID</span><span data-if="dotnet" style="display:none">componentModelID</span><span data-if="python" style="display:none">component_model_id</span></code></i></a>.
</p>
<p>Optional, one can set value pairs for this parameter:
In this case, the first value still determines the number of pyramid levels
to be used.
The second value specifies the lowest pyramid level, to which the found
matches are tracked.
In doing so, one can set either a single value pair or a value pair for each
model component in <a href="#ComponentModelID"><i><code><span data-if="hdevelop" style="display:inline">ComponentModelID</span><span data-if="c" style="display:none">ComponentModelID</span><span data-if="cpp" style="display:none">ComponentModelID</span><span data-if="com" style="display:none">ComponentModelID</span><span data-if="dotnet" style="display:none">componentModelID</span><span data-if="python" style="display:none">component_model_id</span></code></i></a>.
If different value pairs should be used for different components, they must
be specified in the same tuple.
In case <a href="#ComponentModelID"><i><code><span data-if="hdevelop" style="display:inline">ComponentModelID</span><span data-if="c" style="display:none">ComponentModelID</span><span data-if="cpp" style="display:none">ComponentModelID</span><span data-if="com" style="display:none">ComponentModelID</span><span data-if="dotnet" style="display:none">componentModelID</span><span data-if="python" style="display:none">component_model_id</span></code></i></a> contains exactly two components and in
<a href="#NumLevelsComp"><i><code><span data-if="hdevelop" style="display:inline">NumLevelsComp</span><span data-if="c" style="display:none">NumLevelsComp</span><span data-if="cpp" style="display:none">NumLevelsComp</span><span data-if="com" style="display:none">NumLevelsComp</span><span data-if="dotnet" style="display:none">numLevelsComp</span><span data-if="python" style="display:none">num_levels_comp</span></code></i></a> two values are set, these values are interpreted as
different number of pyramid levels to be used and not as a value pair.</p>
<p>
<i>Example:</i> <a href="#ComponentModelID"><i><code><span data-if="hdevelop" style="display:inline">ComponentModelID</span><span data-if="c" style="display:none">ComponentModelID</span><span data-if="cpp" style="display:none">ComponentModelID</span><span data-if="com" style="display:none">ComponentModelID</span><span data-if="dotnet" style="display:none">componentModelID</span><span data-if="python" style="display:none">component_model_id</span></code></i></a> contains two components, for
which different pyramid levels shall be considered.
For the first component 5 levels up to the level 2 shall be used.
For the second component 4 levels up to the level 1 shall be used.
In this case is <a href="#NumLevelsComp"><i><code><span data-if="hdevelop" style="display:inline">NumLevelsComp</span><span data-if="c" style="display:none">NumLevelsComp</span><span data-if="cpp" style="display:none">NumLevelsComp</span><span data-if="com" style="display:none">NumLevelsComp</span><span data-if="dotnet" style="display:none">numLevelsComp</span><span data-if="python" style="display:none">num_levels_comp</span></code></i></a> = <i>[5,2,4,1]</i>.
</p>
</dd>

<dt><b><a href="#GreedinessComp"><i><code><span data-if="hdevelop" style="display:inline">GreedinessComp</span><span data-if="c" style="display:none">GreedinessComp</span><span data-if="cpp" style="display:none">GreedinessComp</span><span data-if="com" style="display:none">GreedinessComp</span><span data-if="dotnet" style="display:none">greedinessComp</span><span data-if="python" style="display:none">greediness_comp</span></code></i></a>:</b></dt>
<dd>
<p>

“Greediness” of the search heuristic for the components: value from 0 to
1. Thereby 0 means: safe but slow, 1: fast but matches may be missed.
</p>
<p>This parameter has the same meaning as <code><span data-if="hdevelop" style="display:inline">Greediness</span><span data-if="c" style="display:none">Greediness</span><span data-if="cpp" style="display:none">Greediness</span><span data-if="com" style="display:none">Greediness</span><span data-if="dotnet" style="display:none">greediness</span><span data-if="python" style="display:none">greediness</span></code> in
<a href="find_shape_model.html"><code><span data-if="hdevelop" style="display:inline">find_shape_model</span><span data-if="c" style="display:none">find_shape_model</span><span data-if="cpp" style="display:none">FindShapeModel</span><span data-if="com" style="display:none">FindShapeModel</span><span data-if="dotnet" style="display:none">FindShapeModel</span><span data-if="python" style="display:none">find_shape_model</span></code></a>.</p>
<p>
Settable is either one element or the same number of elements as model
components in <a href="#ComponentModelID"><i><code><span data-if="hdevelop" style="display:inline">ComponentModelID</span><span data-if="c" style="display:none">ComponentModelID</span><span data-if="cpp" style="display:none">ComponentModelID</span><span data-if="com" style="display:none">ComponentModelID</span><span data-if="dotnet" style="display:none">componentModelID</span><span data-if="python" style="display:none">component_model_id</span></code></i></a>.
In the first case the parameter is used for all components.
In the second case, each parameter element refers to the corresponding
component in <a href="#ComponentModelID"><i><code><span data-if="hdevelop" style="display:inline">ComponentModelID</span><span data-if="c" style="display:none">ComponentModelID</span><span data-if="cpp" style="display:none">ComponentModelID</span><span data-if="com" style="display:none">ComponentModelID</span><span data-if="dotnet" style="display:none">componentModelID</span><span data-if="python" style="display:none">component_model_id</span></code></i></a>.
</p>
</dd>
</dl>
<h3>Further information about output parameters</h3>
<dl class="generic">


<dt><b><a href="#ModelStart"><i><code><span data-if="hdevelop" style="display:inline">ModelStart</span><span data-if="c" style="display:none">ModelStart</span><span data-if="cpp" style="display:none">ModelStart</span><span data-if="com" style="display:none">ModelStart</span><span data-if="dotnet" style="display:none">modelStart</span><span data-if="python" style="display:none">model_start</span></code></i></a> and <a href="#ModelEnd"><i><code><span data-if="hdevelop" style="display:inline">ModelEnd</span><span data-if="c" style="display:none">ModelEnd</span><span data-if="cpp" style="display:none">ModelEnd</span><span data-if="com" style="display:none">ModelEnd</span><span data-if="dotnet" style="display:none">modelEnd</span><span data-if="python" style="display:none">model_end</span></code></i></a>:</b></dt>
<dd>
<p>

Return the first and last index and therewith the index range
of all component matches associated to the same instance of the
component model.
</p>
<p>The component matches corresponding to the first found instance of the
component model are given by the interval of indices
[<a href="#ModelStart"><i><code><span data-if="hdevelop" style="display:inline">ModelStart</span><span data-if="c" style="display:none">ModelStart</span><span data-if="cpp" style="display:none">ModelStart</span><span data-if="com" style="display:none">ModelStart</span><span data-if="dotnet" style="display:none">modelStart</span><span data-if="python" style="display:none">model_start</span></code></i></a>[0],<a href="#ModelEnd"><i><code><span data-if="hdevelop" style="display:inline">ModelEnd</span><span data-if="c" style="display:none">ModelEnd</span><span data-if="cpp" style="display:none">ModelEnd</span><span data-if="com" style="display:none">ModelEnd</span><span data-if="dotnet" style="display:none">modelEnd</span><span data-if="python" style="display:none">model_end</span></code></i></a>[0]].
Thereby the indices refer to the values of the parameters <a href="#RowComp"><i><code><span data-if="hdevelop" style="display:inline">RowComp</span><span data-if="c" style="display:none">RowComp</span><span data-if="cpp" style="display:none">RowComp</span><span data-if="com" style="display:none">RowComp</span><span data-if="dotnet" style="display:none">rowComp</span><span data-if="python" style="display:none">row_comp</span></code></i></a>,
<a href="#ColumnComp"><i><code><span data-if="hdevelop" style="display:inline">ColumnComp</span><span data-if="c" style="display:none">ColumnComp</span><span data-if="cpp" style="display:none">ColumnComp</span><span data-if="com" style="display:none">ColumnComp</span><span data-if="dotnet" style="display:none">columnComp</span><span data-if="python" style="display:none">column_comp</span></code></i></a>, <a href="#AngleComp"><i><code><span data-if="hdevelop" style="display:inline">AngleComp</span><span data-if="c" style="display:none">AngleComp</span><span data-if="cpp" style="display:none">AngleComp</span><span data-if="com" style="display:none">AngleComp</span><span data-if="dotnet" style="display:none">angleComp</span><span data-if="python" style="display:none">angle_comp</span></code></i></a>, <a href="#ScoreComp"><i><code><span data-if="hdevelop" style="display:inline">ScoreComp</span><span data-if="c" style="display:none">ScoreComp</span><span data-if="cpp" style="display:none">ScoreComp</span><span data-if="com" style="display:none">ScoreComp</span><span data-if="dotnet" style="display:none">scoreComp</span><span data-if="python" style="display:none">score_comp</span></code></i></a>, and
<a href="#ModelComp"><i><code><span data-if="hdevelop" style="display:inline">ModelComp</span><span data-if="c" style="display:none">ModelComp</span><span data-if="cpp" style="display:none">ModelComp</span><span data-if="com" style="display:none">ModelComp</span><span data-if="dotnet" style="display:none">modelComp</span><span data-if="python" style="display:none">model_comp</span></code></i></a>.</p>

<i>Example:</i> The component model consists for three components.
Two instances have been found on the image, where for one instance only two
components (component 0 and component 2) could be found.
Then the returned parameters could look like this:
<div style="text-align:center"><table style="margin-left:auto;margin-right:auto" class="layout">
<col span="1">
<col span="1">
<tr>
<td style="text-align:left">
<a href="#RowComp"><i><code><span data-if="hdevelop" style="display:inline">RowComp</span><span data-if="c" style="display:none">RowComp</span><span data-if="cpp" style="display:none">RowComp</span><span data-if="com" style="display:none">RowComp</span><span data-if="dotnet" style="display:none">rowComp</span><span data-if="python" style="display:none">row_comp</span></code></i></a> = <i>[100,200,300,150,250]</i>
</td>
<td style="text-align:left">
<a href="#ModelStart"><i><code><span data-if="hdevelop" style="display:inline">ModelStart</span><span data-if="c" style="display:none">ModelStart</span><span data-if="cpp" style="display:none">ModelStart</span><span data-if="com" style="display:none">ModelStart</span><span data-if="dotnet" style="display:none">modelStart</span><span data-if="python" style="display:none">model_start</span></code></i></a> = <i>[0,3]</i>
</td>
</tr>
<tr>
<td style="text-align:left">
<a href="#ColumnComp"><i><code><span data-if="hdevelop" style="display:inline">ColumnComp</span><span data-if="c" style="display:none">ColumnComp</span><span data-if="cpp" style="display:none">ColumnComp</span><span data-if="com" style="display:none">ColumnComp</span><span data-if="dotnet" style="display:none">columnComp</span><span data-if="python" style="display:none">column_comp</span></code></i></a> = <i>[200,210,220,400,425]</i>
</td>
<td style="text-align:left">
<a href="#ModelEnd"><i><code><span data-if="hdevelop" style="display:inline">ModelEnd</span><span data-if="c" style="display:none">ModelEnd</span><span data-if="cpp" style="display:none">ModelEnd</span><span data-if="com" style="display:none">ModelEnd</span><span data-if="dotnet" style="display:none">modelEnd</span><span data-if="python" style="display:none">model_end</span></code></i></a> = <i>[2,4]</i>
</td>
</tr>
<tr>
<td style="text-align:left">
<a href="#AngleComp"><i><code><span data-if="hdevelop" style="display:inline">AngleComp</span><span data-if="c" style="display:none">AngleComp</span><span data-if="cpp" style="display:none">AngleComp</span><span data-if="com" style="display:none">AngleComp</span><span data-if="dotnet" style="display:none">angleComp</span><span data-if="python" style="display:none">angle_comp</span></code></i></a> = <i>[0,0.1,-0.2,0.1,0.2]</i>
</td>
<td style="text-align:left">
<a href="#ModelComp"><i><code><span data-if="hdevelop" style="display:inline">ModelComp</span><span data-if="c" style="display:none">ModelComp</span><span data-if="cpp" style="display:none">ModelComp</span><span data-if="com" style="display:none">ModelComp</span><span data-if="dotnet" style="display:none">modelComp</span><span data-if="python" style="display:none">model_comp</span></code></i></a> = <i>[0,1,2,0,2]</i>
</td>
</tr>
<tr>
<td style="text-align:left">
<a href="#ScoreComp"><i><code><span data-if="hdevelop" style="display:inline">ScoreComp</span><span data-if="c" style="display:none">ScoreComp</span><span data-if="cpp" style="display:none">ScoreComp</span><span data-if="com" style="display:none">ScoreComp</span><span data-if="dotnet" style="display:none">scoreComp</span><span data-if="python" style="display:none">score_comp</span></code></i></a> = <i>[1,1,1,1,1]</i>
</td>
<td style="text-align:left">
<a href="#Score"><i><code><span data-if="hdevelop" style="display:inline">Score</span><span data-if="c" style="display:none">Score</span><span data-if="cpp" style="display:none">Score</span><span data-if="com" style="display:none">Score</span><span data-if="dotnet" style="display:none">score</span><span data-if="python" style="display:none">score</span></code></i></a> = <i>[1,1]</i>
</td>
</tr>
<tr><td style="text-align:left">
</td></tr>
</table></div>
From the right column it is visible, that in the left column:
<ul>
<li>
<p> Values with index 0 to 2 correspond to the components 0 to 2 of
instance 1.
</p>
</li>
<li>
<p> Values with index 3 to 4 correspond to the components 0 and 2 of
instance 2.
</p>
</li>
</ul>

</dd>

<dt><b><a href="#Score"><i><code><span data-if="hdevelop" style="display:inline">Score</span><span data-if="c" style="display:none">Score</span><span data-if="cpp" style="display:none">Score</span><span data-if="com" style="display:none">Score</span><span data-if="dotnet" style="display:none">score</span><span data-if="python" style="display:none">score</span></code></i></a>:</b></dt>
<dd>
<p>

Score of the found instances of the component model.
</p>
<p><a href="#Score"><i><code><span data-if="hdevelop" style="display:inline">Score</span><span data-if="c" style="display:none">Score</span><span data-if="cpp" style="display:none">Score</span><span data-if="com" style="display:none">Score</span><span data-if="dotnet" style="display:none">score</span><span data-if="python" style="display:none">score</span></code></i></a> contains the weighted mean of the component scores,
the values in <a href="#ScoreComp"><i><code><span data-if="hdevelop" style="display:inline">ScoreComp</span><span data-if="c" style="display:none">ScoreComp</span><span data-if="cpp" style="display:none">ScoreComp</span><span data-if="com" style="display:none">ScoreComp</span><span data-if="dotnet" style="display:none">scoreComp</span><span data-if="python" style="display:none">score_comp</span></code></i></a>.
The weighting is performed according to the number of model points
within the respective component.
</p>
</dd>

<dt><b><a href="#RowComp"><i><code><span data-if="hdevelop" style="display:inline">RowComp</span><span data-if="c" style="display:none">RowComp</span><span data-if="cpp" style="display:none">RowComp</span><span data-if="com" style="display:none">RowComp</span><span data-if="dotnet" style="display:none">rowComp</span><span data-if="python" style="display:none">row_comp</span></code></i></a>, <a href="#ColumnComp"><i><code><span data-if="hdevelop" style="display:inline">ColumnComp</span><span data-if="c" style="display:none">ColumnComp</span><span data-if="cpp" style="display:none">ColumnComp</span><span data-if="com" style="display:none">ColumnComp</span><span data-if="dotnet" style="display:none">columnComp</span><span data-if="python" style="display:none">column_comp</span></code></i></a>, and <a href="#AngleComp"><i><code><span data-if="hdevelop" style="display:inline">AngleComp</span><span data-if="c" style="display:none">AngleComp</span><span data-if="cpp" style="display:none">AngleComp</span><span data-if="com" style="display:none">AngleComp</span><span data-if="dotnet" style="display:none">angleComp</span><span data-if="python" style="display:none">angle_comp</span></code></i></a>:</b></dt>
<dd>
<p>

The position (<a href="#RowComp"><i><code><span data-if="hdevelop" style="display:inline">RowComp</span><span data-if="c" style="display:none">RowComp</span><span data-if="cpp" style="display:none">RowComp</span><span data-if="com" style="display:none">RowComp</span><span data-if="dotnet" style="display:none">rowComp</span><span data-if="python" style="display:none">row_comp</span></code></i></a>, <a href="#ColumnComp"><i><code><span data-if="hdevelop" style="display:inline">ColumnComp</span><span data-if="c" style="display:none">ColumnComp</span><span data-if="cpp" style="display:none">ColumnComp</span><span data-if="com" style="display:none">ColumnComp</span><span data-if="dotnet" style="display:none">columnComp</span><span data-if="python" style="display:none">column_comp</span></code></i></a>) and rotation
(<a href="#AngleComp"><i><code><span data-if="hdevelop" style="display:inline">AngleComp</span><span data-if="c" style="display:none">AngleComp</span><span data-if="cpp" style="display:none">AngleComp</span><span data-if="com" style="display:none">AngleComp</span><span data-if="dotnet" style="display:none">angleComp</span><span data-if="python" style="display:none">angle_comp</span></code></i></a>) of the model components of all found component
model instances.
</p>
<p>The coordinates <a href="#RowComp"><i><code><span data-if="hdevelop" style="display:inline">RowComp</span><span data-if="c" style="display:none">RowComp</span><span data-if="cpp" style="display:none">RowComp</span><span data-if="com" style="display:none">RowComp</span><span data-if="dotnet" style="display:none">rowComp</span><span data-if="python" style="display:none">row_comp</span></code></i></a> and <a href="#ColumnComp"><i><code><span data-if="hdevelop" style="display:inline">ColumnComp</span><span data-if="c" style="display:none">ColumnComp</span><span data-if="cpp" style="display:none">ColumnComp</span><span data-if="com" style="display:none">ColumnComp</span><span data-if="dotnet" style="display:none">columnComp</span><span data-if="python" style="display:none">column_comp</span></code></i></a> are the
coordinates of the component origin (reference point) in
the search image.
The component origin depends on the model creation:
</p>
<ul>
<li>
<p> with <a href="create_trained_component_model.html"><code><span data-if="hdevelop" style="display:inline">create_trained_component_model</span><span data-if="c" style="display:none">create_trained_component_model</span><span data-if="cpp" style="display:none">CreateTrainedComponentModel</span><span data-if="com" style="display:none">CreateTrainedComponentModel</span><span data-if="dotnet" style="display:none">CreateTrainedComponentModel</span><span data-if="python" style="display:none">create_trained_component_model</span></code></a> by training:
The component origin is the center of gravity of the respective
returned contour region in <code><span data-if="hdevelop" style="display:inline">ModelComponents</span><span data-if="c" style="display:none">ModelComponents</span><span data-if="cpp" style="display:none">ModelComponents</span><span data-if="com" style="display:none">ModelComponents</span><span data-if="dotnet" style="display:none">modelComponents</span><span data-if="python" style="display:none">model_components</span></code> of 该算子
<a href="train_model_components.html"><code><span data-if="hdevelop" style="display:inline">train_model_components</span><span data-if="c" style="display:none">train_model_components</span><span data-if="cpp" style="display:none">TrainModelComponents</span><span data-if="com" style="display:none">TrainModelComponents</span><span data-if="dotnet" style="display:none">TrainModelComponents</span><span data-if="python" style="display:none">train_model_components</span></code></a>.
</p>
</li>
<li>
<p> with <a href="create_component_model.html"><code><span data-if="hdevelop" style="display:inline">create_component_model</span><span data-if="c" style="display:none">create_component_model</span><span data-if="cpp" style="display:none">CreateComponentModel</span><span data-if="com" style="display:none">CreateComponentModel</span><span data-if="dotnet" style="display:none">CreateComponentModel</span><span data-if="python" style="display:none">create_component_model</span></code></a> manually:
The component origin is the center of gravity of the corresponding
passed component region <code><span data-if="hdevelop" style="display:inline">ComponentRegions</span><span data-if="c" style="display:none">ComponentRegions</span><span data-if="cpp" style="display:none">ComponentRegions</span><span data-if="com" style="display:none">ComponentRegions</span><span data-if="dotnet" style="display:none">componentRegions</span><span data-if="python" style="display:none">component_regions</span></code> of 该算子
<a href="create_component_model.html"><code><span data-if="hdevelop" style="display:inline">create_component_model</span><span data-if="c" style="display:none">create_component_model</span><span data-if="cpp" style="display:none">CreateComponentModel</span><span data-if="com" style="display:none">CreateComponentModel</span><span data-if="dotnet" style="display:none">CreateComponentModel</span><span data-if="python" style="display:none">create_component_model</span></code></a>.
</p>
</li>
</ul>
<p>
Since the relations between the components in <a href="#ComponentModelID"><i><code><span data-if="hdevelop" style="display:inline">ComponentModelID</span><span data-if="c" style="display:none">ComponentModelID</span><span data-if="cpp" style="display:none">ComponentModelID</span><span data-if="com" style="display:none">ComponentModelID</span><span data-if="dotnet" style="display:none">componentModelID</span><span data-if="python" style="display:none">component_model_id</span></code></i></a>
refer to this reference point, the origin of the components must not be
modified by using <a href="set_shape_model_origin.html"><code><span data-if="hdevelop" style="display:inline">set_shape_model_origin</span><span data-if="c" style="display:none">set_shape_model_origin</span><span data-if="cpp" style="display:none">SetShapeModelOrigin</span><span data-if="com" style="display:none">SetShapeModelOrigin</span><span data-if="dotnet" style="display:none">SetShapeModelOrigin</span><span data-if="python" style="display:none">set_shape_model_origin</span></code></a>.
</p>
</dd>

<dt><b><a href="#ScoreComp"><i><code><span data-if="hdevelop" style="display:inline">ScoreComp</span><span data-if="c" style="display:none">ScoreComp</span><span data-if="cpp" style="display:none">ScoreComp</span><span data-if="com" style="display:none">ScoreComp</span><span data-if="dotnet" style="display:none">scoreComp</span><span data-if="python" style="display:none">score_comp</span></code></i></a>:</b></dt>
<dd>
<p>

Score of each found component instance.
</p>
<p>The score is a number between 0 and 1, and is an approximate measure of how
much of the component is visible in the image.
If, for example, half of the component is occluded, the score cannot exceed
0.5.
</p>
</dd>

<dt><b><a href="#ModelComp"><i><code><span data-if="hdevelop" style="display:inline">ModelComp</span><span data-if="c" style="display:none">ModelComp</span><span data-if="cpp" style="display:none">ModelComp</span><span data-if="com" style="display:none">ModelComp</span><span data-if="dotnet" style="display:none">modelComp</span><span data-if="python" style="display:none">model_comp</span></code></i></a>:</b></dt>
<dd>
<p>

Index of the found component.
</p>
<p>The tuple contains the indices of the respective model components
(see <a href="create_component_model.html"><code><span data-if="hdevelop" style="display:inline">create_component_model</span><span data-if="c" style="display:none">create_component_model</span><span data-if="cpp" style="display:none">CreateComponentModel</span><span data-if="com" style="display:none">CreateComponentModel</span><span data-if="dotnet" style="display:none">CreateComponentModel</span><span data-if="python" style="display:none">create_component_model</span></code></a> and <a href="train_model_components.html"><code><span data-if="hdevelop" style="display:inline">train_model_components</span><span data-if="c" style="display:none">train_model_components</span><span data-if="cpp" style="display:none">TrainModelComponents</span><span data-if="com" style="display:none">TrainModelComponents</span><span data-if="dotnet" style="display:none">TrainModelComponents</span><span data-if="python" style="display:none">train_model_components</span></code></a>,
respectively).
By this the values in <a href="#RowComp"><i><code><span data-if="hdevelop" style="display:inline">RowComp</span><span data-if="c" style="display:none">RowComp</span><span data-if="cpp" style="display:none">RowComp</span><span data-if="com" style="display:none">RowComp</span><span data-if="dotnet" style="display:none">rowComp</span><span data-if="python" style="display:none">row_comp</span></code></i></a>, <a href="#ColumnComp"><i><code><span data-if="hdevelop" style="display:inline">ColumnComp</span><span data-if="c" style="display:none">ColumnComp</span><span data-if="cpp" style="display:none">ColumnComp</span><span data-if="com" style="display:none">ColumnComp</span><span data-if="dotnet" style="display:none">columnComp</span><span data-if="python" style="display:none">column_comp</span></code></i></a>,
<a href="#AngleComp"><i><code><span data-if="hdevelop" style="display:inline">AngleComp</span><span data-if="c" style="display:none">AngleComp</span><span data-if="cpp" style="display:none">AngleComp</span><span data-if="com" style="display:none">AngleComp</span><span data-if="dotnet" style="display:none">angleComp</span><span data-if="python" style="display:none">angle_comp</span></code></i></a>, and <a href="#ScoreComp"><i><code><span data-if="hdevelop" style="display:inline">ScoreComp</span><span data-if="c" style="display:none">ScoreComp</span><span data-if="cpp" style="display:none">ScoreComp</span><span data-if="com" style="display:none">ScoreComp</span><span data-if="dotnet" style="display:none">scoreComp</span><span data-if="python" style="display:none">score_comp</span></code></i></a> can be associated
to the different model components.
See also the example given for <a href="#ModelStart"><i><code><span data-if="hdevelop" style="display:inline">ModelStart</span><span data-if="c" style="display:none">ModelStart</span><span data-if="cpp" style="display:none">ModelStart</span><span data-if="com" style="display:none">ModelStart</span><span data-if="dotnet" style="display:none">modelStart</span><span data-if="python" style="display:none">model_start</span></code></i></a> and <a href="#ModelEnd"><i><code><span data-if="hdevelop" style="display:inline">ModelEnd</span><span data-if="c" style="display:none">ModelEnd</span><span data-if="cpp" style="display:none">ModelEnd</span><span data-if="com" style="display:none">ModelEnd</span><span data-if="dotnet" style="display:none">modelEnd</span><span data-if="python" style="display:none">model_end</span></code></i></a>.
</p>
</dd>
</dl>
<h3>Information concerning the search</h3>
<p>Internally, the shape-based matching is used for the component-based
matching in order to search the individual components
(see <a href="find_shape_model.html"><code><span data-if="hdevelop" style="display:inline">find_shape_model</span><span data-if="c" style="display:none">find_shape_model</span><span data-if="cpp" style="display:none">FindShapeModel</span><span data-if="com" style="display:none">FindShapeModel</span><span data-if="dotnet" style="display:none">FindShapeModel</span><span data-if="python" style="display:none">find_shape_model</span></code></a>).</p>
<p>
The domain of the <a href="#Image"><i><code><span data-if="hdevelop" style="display:inline">Image</span><span data-if="c" style="display:none">Image</span><span data-if="cpp" style="display:none">Image</span><span data-if="com" style="display:none">Image</span><span data-if="dotnet" style="display:none">image</span><span data-if="python" style="display:none">image</span></code></i></a> determines the search space for the
reference point, i.e., the allowed positions, of the root component.</p>
<p>
Usually the component model is searched only within those points of the
image domain in which the model fits completely into the image.
This means that the components will not be found if they extend beyond the
borders of the image, even if they would achieve a score greater than
<a href="#MinScoreComp"><i><code><span data-if="hdevelop" style="display:inline">MinScoreComp</span><span data-if="c" style="display:none">MinScoreComp</span><span data-if="cpp" style="display:none">MinScoreComp</span><span data-if="com" style="display:none">MinScoreComp</span><span data-if="dotnet" style="display:none">minScoreComp</span><span data-if="python" style="display:none">min_score_comp</span></code></i></a> (see above).</p>
<p>
Note that, if for a certain pyramid level the component model touches the
image border, it might not be found even if it lies completely within the
original image.
As a rule of thumb, the model might not be found if its distance to
an image border falls below  <span title="1" style="vertical-align:-0.110416em" class="math"><!-- Created by MetaPost 1.902 on 2023.05.15:2033 --><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="5.93567em" height="0.970833em" viewBox="0 0 94.970764 15.533325">
<!-- Original BoundingBox: -47.485382 -7.766663 47.485382 7.766663 -->
  <defs>
    <g transform="scale(0.006974,0.006974)" id="GLYPHcmmi7_76">
      <path style="fill-rule: evenodd;" d="M412.000000 -601.000000C421.000000 -637.000000,424.000000 -647.000000,516.000000 -647.000000C547.000000 -647.000000,557.000000 -647.000000,557.000000 -669.000000C557.000000 -670.000000,556.000000 -683.000000,540.000000 -683.000000C517.000000 -683.000000,490.000000 -681.000000,466.000000 -680.000000C441.000000 -679.000000,411.000000 -679.000000,386.000000 -679.000000C365.000000 -679.000000,338.000000 -680.000000,317.000000 -680.000000C296.000000 -680.000000,272.000000 -683.000000,252.000000 -683.000000C246.000000 -683.000000,231.000000 -683.000000,231.000000 -661.000000C231.000000 -647.000000,243.000000 -647.000000,263.000000 -647.000000C264.000000 -647.000000,283.000000 -647.000000,301.000000 -645.000000C322.000000 -643.000000,324.000000 -641.000000,324.000000 -631.000000C324.000000 -629.000000,324.000000 -624.000000,320.000000 -609.000000L187.000000 -78.000000C178.000000 -44.000000,176.000000 -36.000000,99.000000 -36.000000C82.000000 -36.000000,69.000000 -36.000000,69.000000 -15.000000C69.000000 -0.000000,81.000000 -0.000000,99.000000 -0.000000L602.000000 -0.000000C627.000000 -0.000000,628.000000 -1.000000,636.000000 -20.000000C646.000000 -47.000000,721.000000 -241.000000,721.000000 -249.000000C721.000000 -252.000000,719.000000 -263.000000,704.000000 -263.000000C692.000000 -263.000000,690.000000 -258.000000,684.000000 -242.000000C646.000000 -147.000000,602.000000 -36.000000,419.000000 -36.000000L306.000000 -36.000000C275.000000 -36.000000,274.000000 -37.000000,274.000000 -46.000000C274.000000 -47.000000,274.000000 -52.000000,278.000000 -67.000000"></path>
    </g>
    <g transform="scale(0.006974,0.006974)" id="GLYPHcmmi7_78">
      <path style="fill-rule: evenodd;" d="M834.000000 -574.000000C844.000000 -612.000000,860.000000 -645.000000,940.000000 -647.000000C945.000000 -647.000000,960.000000 -648.000000,960.000000 -669.000000C960.000000 -675.000000,955.000000 -683.000000,945.000000 -683.000000L841.000000 -683.000000L912.000000 -683.000000L875.000000 -679.000000L841.000000 -679.000000L817.000000 -679.000000L759.000000 -683.000000L735.000000 -683.000000C730.000000 -683.000000,715.000000 -683.000000,715.000000 -661.000000C715.000000 -648.000000,728.000000 -647.000000,737.000000 -647.000000C784.000000 -646.000000,801.000000 -631.000000,801.000000 -606.000000C801.000000 -598.000000,800.000000 -593.000000,797.000000 -582.000000L688.000000 -146.000000L434.000000 -666.000000C426.000000 -683.000000,424.000000 -683.000000,400.000000 -683.000000L263.000000 -683.000000C244.000000 -683.000000,231.000000 -683.000000,231.000000 -661.000000C231.000000 -647.000000,243.000000 -647.000000,264.000000 -647.000000C285.000000 -647.000000,307.000000 -646.000000,328.000000 -642.000000L194.000000 -107.000000C185.000000 -69.000000,168.000000 -39.000000,90.000000 -36.000000C83.000000 -36.000000,69.000000 -35.000000,69.000000 -15.000000C69.000000 -4.000000,77.000000 -0.000000,84.000000 -0.000000L188.000000 -0.000000L117.000000 -0.000000L154.000000 -4.000000L188.000000 -4.000000L212.000000 -4.000000L270.000000 -0.000000L294.000000 -0.000000C304.000000 -0.000000,314.000000 -5.000000,314.000000 -21.000000C314.000000 -35.000000,302.000000 -36.000000,291.000000 -36.000000C228.000000 -38.000000,228.000000 -64.000000,228.000000 -78.000000C228.000000 -82.000000,228.000000 -87.000000,232.000000 -103.000000L360.000000 -615.000000L652.000000 -17.000000C660.000000 -1.000000,664.000000 -0.000000,674.000000 -0.000000C690.000000 -0.000000,690.000000 -3.000000,695.000000 -21.000000"></path>
    </g>
    <g transform="scale(0.006974,0.006974)" id="GLYPHcmmi7_101">
      <path style="fill-rule: evenodd;" d="M224.000000 -228.000000C252.000000 -228.000000,331.000000 -230.000000,385.000000 -249.000000C459.000000 -275.000000,473.000000 -323.000000,473.000000 -353.000000C473.000000 -408.000000,418.000000 -441.000000,349.000000 -441.000000C229.000000 -441.000000,67.000000 -349.000000,67.000000 -178.000000C67.000000 -77.000000,130.000000 10.000000,247.000000 10.000000C416.000000 10.000000,495.000000 -89.000000,495.000000 -103.000000C495.000000 -109.000000,486.000000 -120.000000,478.000000 -120.000000C472.000000 -120.000000,470.000000 -118.000000,462.000000 -110.000000C384.000000 -18.000000,267.000000 -18.000000,249.000000 -18.000000C189.000000 -18.000000,149.000000 -58.000000,149.000000 -139.000000C149.000000 -153.000000,149.000000 -173.000000,161.000000 -228.000000M169.000000 -256.000000C210.000000 -401.000000,321.000000 -413.000000,349.000000 -413.000000C393.000000 -413.000000,430.000000 -391.000000,430.000000 -353.000000C430.000000 -256.000000,261.000000 -256.000000,218.000000 -256.000000"></path>
    </g>
    <g transform="scale(0.006974,0.006974)" id="GLYPHcmmi7_108">
      <path style="fill-rule: evenodd;" d="M282.000000 -664.000000C283.000000 -666.000000,286.000000 -679.000000,286.000000 -680.000000C286.000000 -685.000000,282.000000 -694.000000,270.000000 -694.000000C250.000000 -694.000000,167.000000 -686.000000,142.000000 -684.000000C135.000000 -683.000000,121.000000 -682.000000,121.000000 -661.000000C121.000000 -647.000000,135.000000 -647.000000,146.000000 -647.000000C194.000000 -647.000000,194.000000 -640.000000,194.000000 -632.000000C194.000000 -625.000000,192.000000 -619.000000,190.000000 -610.000000L66.000000 -116.000000C63.000000 -106.000000,62.000000 -95.000000,62.000000 -85.000000C62.000000 -21.000000,119.000000 10.000000,167.000000 10.000000C191.000000 10.000000,221.000000 2.000000,247.000000 -43.000000C268.000000 -80.000000,282.000000 -139.000000,282.000000 -143.000000C282.000000 -156.000000,269.000000 -156.000000,266.000000 -156.000000C252.000000 -156.000000,250.000000 -150.000000,246.000000 -132.000000C233.000000 -82.000000,214.000000 -18.000000,171.000000 -18.000000C144.000000 -18.000000,137.000000 -43.000000,137.000000 -67.000000C137.000000 -78.000000,140.000000 -97.000000,143.000000 -108.000000"></path>
    </g>
    <g transform="scale(0.006974,0.006974)" id="GLYPHcmmi7_109">
      <path style="fill-rule: evenodd;" d="M434.000000 -81.000000C429.000000 -61.000000,420.000000 -27.000000,420.000000 -22.000000C420.000000 -0.000000,438.000000 10.000000,454.000000 10.000000C472.000000 10.000000,488.000000 -3.000000,493.000000 -12.000000C498.000000 -21.000000,506.000000 -53.000000,511.000000 -74.000000C516.000000 -93.000000,527.000000 -139.000000,533.000000 -164.000000C539.000000 -186.000000,545.000000 -208.000000,550.000000 -231.000000C561.000000 -274.000000,561.000000 -276.000000,581.000000 -307.000000C613.000000 -356.000000,663.000000 -413.000000,741.000000 -413.000000C797.000000 -413.000000,800.000000 -367.000000,800.000000 -343.000000C800.000000 -283.000000,757.000000 -172.000000,741.000000 -130.000000C730.000000 -102.000000,726.000000 -93.000000,726.000000 -76.000000C726.000000 -23.000000,770.000000 10.000000,821.000000 10.000000C921.000000 10.000000,965.000000 -128.000000,965.000000 -143.000000C965.000000 -156.000000,952.000000 -156.000000,949.000000 -156.000000C935.000000 -156.000000,934.000000 -150.000000,930.000000 -139.000000C907.000000 -59.000000,864.000000 -18.000000,824.000000 -18.000000C803.000000 -18.000000,799.000000 -32.000000,799.000000 -53.000000C799.000000 -76.000000,804.000000 -89.000000,822.000000 -134.000000C834.000000 -165.000000,875.000000 -271.000000,875.000000 -327.000000C875.000000 -343.000000,875.000000 -385.000000,838.000000 -414.000000C821.000000 -427.000000,792.000000 -441.000000,745.000000 -441.000000C655.000000 -441.000000,600.000000 -382.000000,568.000000 -340.000000C560.000000 -425.000000,489.000000 -441.000000,438.000000 -441.000000C355.000000 -441.000000,299.000000 -390.000000,269.000000 -350.000000C262.000000 -419.000000,203.000000 -441.000000,162.000000 -441.000000C119.000000 -441.000000,96.000000 -410.000000,83.000000 -387.000000C61.000000 -350.000000,47.000000 -293.000000,47.000000 -288.000000C47.000000 -275.000000,61.000000 -275.000000,64.000000 -275.000000C78.000000 -275.000000,79.000000 -278.000000,86.000000 -305.000000C101.000000 -364.000000,120.000000 -413.000000,159.000000 -413.000000C185.000000 -413.000000,192.000000 -391.000000,192.000000 -364.000000C192.000000 -345.000000,183.000000 -308.000000,176.000000 -281.000000C169.000000 -254.000000,159.000000 -213.000000,154.000000 -191.000000L122.000000 -63.000000C118.000000 -50.000000,112.000000 -25.000000,112.000000 -22.000000C112.000000 -0.000000,130.000000 10.000000,146.000000 10.000000C164.000000 10.000000,180.000000 -3.000000,185.000000 -12.000000C190.000000 -21.000000,198.000000 -53.000000,203.000000 -74.000000C208.000000 -93.000000,219.000000 -139.000000,225.000000 -164.000000C231.000000 -186.000000,237.000000 -208.000000,242.000000 -231.000000C253.000000 -272.000000,255.000000 -280.000000,284.000000 -321.000000C312.000000 -361.000000,359.000000 -413.000000,434.000000 -413.000000C492.000000 -413.000000,493.000000 -362.000000,493.000000 -343.000000C493.000000 -318.000000,490.000000 -305.000000,476.000000 -249.000000"></path>
    </g>
    <g transform="scale(0.006974,0.006974)" id="GLYPHcmmi7_115">
      <path style="fill-rule: evenodd;" d="M431.000000 -376.000000C405.000000 -370.000000,389.000000 -349.000000,389.000000 -329.000000C389.000000 -306.000000,409.000000 -297.000000,422.000000 -297.000000C432.000000 -297.000000,470.000000 -303.000000,470.000000 -354.000000C470.000000 -419.000000,398.000000 -441.000000,337.000000 -441.000000C181.000000 -441.000000,153.000000 -326.000000,153.000000 -295.000000C153.000000 -258.000000,174.000000 -234.000000,188.000000 -222.000000C214.000000 -202.000000,232.000000 -198.000000,301.000000 -186.000000C322.000000 -182.000000,386.000000 -170.000000,386.000000 -120.000000C386.000000 -103.000000,375.000000 -65.000000,333.000000 -40.000000C294.000000 -18.000000,245.000000 -18.000000,233.000000 -18.000000C193.000000 -18.000000,136.000000 -27.000000,113.000000 -60.000000C146.000000 -64.000000,168.000000 -89.000000,168.000000 -117.000000C168.000000 -142.000000,150.000000 -154.000000,129.000000 -154.000000C100.000000 -154.000000,71.000000 -131.000000,71.000000 -87.000000C71.000000 -27.000000,135.000000 10.000000,232.000000 10.000000C416.000000 10.000000,450.000000 -116.000000,450.000000 -155.000000C450.000000 -247.000000,349.000000 -265.000000,312.000000 -272.000000C303.000000 -274.000000,278.000000 -278.000000,272.000000 -280.000000C235.000000 -287.000000,217.000000 -308.000000,217.000000 -330.000000C217.000000 -353.000000,235.000000 -380.000000,257.000000 -394.000000C284.000000 -411.000000,319.000000 -413.000000,336.000000 -413.000000C357.000000 -413.000000,409.000000 -410.000000,431.000000 -376.000000"></path>
    </g>
    <g transform="scale(0.006974,0.006974)" id="GLYPHcmmi7_117">
      <path style="fill-rule: evenodd;" d="M423.000000 -162.000000C418.000000 -142.000000,409.000000 -104.000000,407.000000 -103.000000C388.000000 -72.000000,348.000000 -18.000000,286.000000 -18.000000C217.000000 -18.000000,217.000000 -83.000000,217.000000 -101.000000C217.000000 -160.000000,245.000000 -231.000000,273.000000 -304.000000C281.000000 -324.000000,287.000000 -339.000000,287.000000 -355.000000C287.000000 -407.000000,243.000000 -441.000000,192.000000 -441.000000C92.000000 -441.000000,47.000000 -304.000000,47.000000 -288.000000C47.000000 -275.000000,61.000000 -275.000000,64.000000 -275.000000C78.000000 -275.000000,79.000000 -280.000000,82.000000 -291.000000C106.000000 -373.000000,150.000000 -413.000000,189.000000 -413.000000C206.000000 -413.000000,214.000000 -402.000000,214.000000 -378.000000C214.000000 -355.000000,206.000000 -334.000000,196.000000 -311.000000C142.000000 -173.000000,142.000000 -144.000000,142.000000 -117.000000C142.000000 -100.000000,142.000000 -54.000000,179.000000 -22.000000C208.000000 2.000000,247.000000 10.000000,282.000000 10.000000C345.000000 10.000000,379.000000 -24.000000,412.000000 -56.000000C434.000000 8.000000,501.000000 10.000000,513.000000 10.000000C547.000000 10.000000,573.000000 -10.000000,592.000000 -43.000000C614.000000 -82.000000,628.000000 -140.000000,628.000000 -143.000000C628.000000 -156.000000,614.000000 -156.000000,611.000000 -156.000000C597.000000 -156.000000,596.000000 -152.000000,589.000000 -125.000000C577.000000 -78.000000,558.000000 -18.000000,516.000000 -18.000000C490.000000 -18.000000,483.000000 -41.000000,483.000000 -67.000000C483.000000 -84.000000,491.000000 -120.000000,498.000000 -146.000000C505.000000 -173.000000,515.000000 -214.000000,520.000000 -236.000000L543.000000 -325.000000C549.000000 -350.000000,560.000000 -394.000000,560.000000 -399.000000C560.000000 -419.000000,544.000000 -431.000000,527.000000 -431.000000C490.000000 -431.000000,483.000000 -402.000000,475.000000 -370.000000"></path>
    </g>
    <g transform="scale(0.006974,0.006974)" id="GLYPHcmmi7_118">
      <path style="fill-rule: evenodd;" d="M534.000000 -363.000000C534.000000 -441.000000,487.000000 -442.000000,484.000000 -442.000000C458.000000 -442.000000,430.000000 -415.000000,430.000000 -389.000000C430.000000 -372.000000,440.000000 -364.000000,447.000000 -358.000000C464.000000 -344.000000,484.000000 -318.000000,484.000000 -278.000000C484.000000 -233.000000,418.000000 -18.000000,299.000000 -18.000000C218.000000 -18.000000,218.000000 -90.000000,218.000000 -107.000000C218.000000 -153.000000,236.000000 -209.000000,273.000000 -302.000000C281.000000 -323.000000,287.000000 -338.000000,287.000000 -355.000000C287.000000 -407.000000,243.000000 -441.000000,192.000000 -441.000000C92.000000 -441.000000,47.000000 -304.000000,47.000000 -288.000000C47.000000 -275.000000,61.000000 -275.000000,64.000000 -275.000000C78.000000 -275.000000,79.000000 -280.000000,82.000000 -291.000000C106.000000 -373.000000,149.000000 -413.000000,189.000000 -413.000000C206.000000 -413.000000,214.000000 -402.000000,214.000000 -378.000000C214.000000 -355.000000,206.000000 -334.000000,196.000000 -311.000000C153.000000 -200.000000,142.000000 -157.000000,142.000000 -121.000000C142.000000 -22.000000,220.000000 10.000000,296.000000 10.000000C464.000000 10.000000,534.000000 -281.000000,534.000000 -363.000000"></path>
    </g>
    <g transform="scale(0.009963,0.009963)" id="GLYPHcmr10_50">
      <path style="fill-rule: evenodd;" d="M127.000000 -77.000000L233.000000 -180.000000C389.000000 -318.000000,449.000000 -372.000000,449.000000 -472.000000C449.000000 -586.000000,359.000000 -666.000000,237.000000 -666.000000C124.000000 -666.000000,50.000000 -574.000000,50.000000 -485.000000C50.000000 -429.000000,100.000000 -429.000000,103.000000 -429.000000C120.000000 -429.000000,155.000000 -441.000000,155.000000 -482.000000C155.000000 -508.000000,137.000000 -534.000000,102.000000 -534.000000C94.000000 -534.000000,92.000000 -534.000000,89.000000 -533.000000C112.000000 -598.000000,166.000000 -635.000000,224.000000 -635.000000C315.000000 -635.000000,358.000000 -554.000000,358.000000 -472.000000C358.000000 -392.000000,308.000000 -313.000000,253.000000 -251.000000L61.000000 -37.000000C50.000000 -26.000000,50.000000 -24.000000,50.000000 -0.000000L421.000000 -0.000000L449.000000 -174.000000L424.000000 -174.000000C419.000000 -144.000000,412.000000 -100.000000,402.000000 -85.000000C395.000000 -77.000000,329.000000 -77.000000,307.000000 -77.000000"></path>
    </g>
    <g transform="scale(0.006974,0.006974)" id="GLYPHcmsy7_0">
      <path style="fill-rule: evenodd;" d="M744.000000 -226.000000C760.000000 -226.000000,784.000000 -226.000000,784.000000 -250.000000C784.000000 -275.000000,761.000000 -275.000000,744.000000 -275.000000L148.000000 -275.000000C132.000000 -275.000000,108.000000 -275.000000,108.000000 -251.000000C108.000000 -226.000000,131.000000 -226.000000,148.000000 -226.000000"></path>
    </g>
    <g transform="scale(0.006974,0.006974)" id="GLYPHcmr7_49">
      <path style="fill-rule: evenodd;" d="M335.000000 -636.000000C335.000000 -663.000000,333.000000 -664.000000,305.000000 -664.000000C241.000000 -601.000000,150.000000 -600.000000,109.000000 -600.000000L109.000000 -564.000000C133.000000 -564.000000,199.000000 -564.000000,254.000000 -592.000000L254.000000 -82.000000C254.000000 -49.000000,254.000000 -36.000000,154.000000 -36.000000L116.000000 -36.000000L116.000000 -0.000000L294.000000 -0.000000L134.000000 -1.000000L257.000000 -4.000000L294.000000 -4.000000L325.000000 -4.000000L451.000000 -1.000000L473.000000 -0.000000L473.000000 -36.000000L435.000000 -36.000000C335.000000 -36.000000,335.000000 -49.000000,335.000000 -82.000000"></path>
    </g>
  </defs>
  <g transform="matrix(1.600006,-0.000000,-0.000000,1.600006,0.530609 13.766663)" style="fill: rgb(0.000000%,0.000000%,0.000000%);">
    <use xlink:href="#GLYPHcmr10_50"></use>
  </g>
  <g transform="matrix(1.600006,-0.000000,-0.000000,1.600006,8.500732 7.981995)" style="fill: rgb(0.000000%,0.000000%,0.000000%);">
    <use xlink:href="#GLYPHcmmi7_78"></use>
  </g>
  <g transform="matrix(1.600006,-0.000000,-0.000000,1.600006,19.794067 7.981995)" style="fill: rgb(0.000000%,0.000000%,0.000000%);">
    <use xlink:href="#GLYPHcmmi7_117"></use>
    <use xlink:href="#GLYPHcmmi7_109" x="4.728124"></use>
    <use xlink:href="#GLYPHcmmi7_76" x="11.824354"></use>
    <use xlink:href="#GLYPHcmmi7_101" x="17.310587"></use>
    <use xlink:href="#GLYPHcmmi7_118" x="21.104772"></use>
  </g>
  <g transform="matrix(1.600006,-0.000000,-0.000000,1.600006,60.211472 7.981995)" style="fill: rgb(0.000000%,0.000000%,0.000000%);">
    <use xlink:href="#GLYPHcmmi7_101"></use>
    <use xlink:href="#GLYPHcmmi7_108" x="3.794186"></use>
  </g>
  <g transform="matrix(1.600006,-0.000000,-0.000000,1.600006,70.355209 7.981995)" style="fill: rgb(0.000000%,0.000000%,0.000000%);">
    <use xlink:href="#GLYPHcmmi7_115"></use>
  </g>
  <g transform="matrix(1.600006,-0.000000,-0.000000,1.600006,76.371719 7.981995)" style="fill: rgb(0.000000%,0.000000%,0.000000%);">
    <use xlink:href="#GLYPHcmsy7_0"></use>
  </g>
  <g transform="matrix(1.600006,-0.000000,-0.000000,1.600006,86.334305 7.981995)" style="fill: rgb(0.000000%,0.000000%,0.000000%);">
    <use xlink:href="#GLYPHcmr7_49"></use>
  </g>
</svg></span>.
This behavior can be changed with
<a href="set_system.html"><code><span data-if="hdevelop" style="display:inline">set_system('border_shape_models','true')</span><span data-if="c" style="display:none">set_system("border_shape_models","true")</span><span data-if="cpp" style="display:none">SetSystem("border_shape_models","true")</span><span data-if="com" style="display:none">SetSystem("border_shape_models","true")</span><span data-if="dotnet" style="display:none">SetSystem("border_shape_models","true")</span><span data-if="python" style="display:none">set_system("border_shape_models","true")</span></code></a>, which will cause
components that extend beyond the image border to be found if they achieve
a score greater than <a href="#MinScoreComp"><i><code><span data-if="hdevelop" style="display:inline">MinScoreComp</span><span data-if="c" style="display:none">MinScoreComp</span><span data-if="cpp" style="display:none">MinScoreComp</span><span data-if="com" style="display:none">MinScoreComp</span><span data-if="dotnet" style="display:none">minScoreComp</span><span data-if="python" style="display:none">min_score_comp</span></code></i></a>.
Here, points lying outside the image are regarded as being occluded, i.e.,
they lower the score.
It should be noted that this mode increases the runtime of the search.</p>
<p>
Note further, that in rare cases, which occur typically only for artificial
images, the model might not be found also if for certain pyramid levels the
model touches the border of the reduced domain. Then, it may help to
enlarge the reduced domain by <span title="2" style="vertical-align:-0.110416em" class="math"><!-- Created by MetaPost 1.902 on 2023.05.15:2033 --><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="5.93567em" height="0.970833em" viewBox="0 0 94.970764 15.533325">
<!-- Original BoundingBox: -47.485382 -7.766663 47.485382 7.766663 -->
  <defs>
    <g transform="scale(0.006974,0.006974)" id="GLYPHcmmi7_76">
      <path style="fill-rule: evenodd;" d="M412.000000 -601.000000C421.000000 -637.000000,424.000000 -647.000000,516.000000 -647.000000C547.000000 -647.000000,557.000000 -647.000000,557.000000 -669.000000C557.000000 -670.000000,556.000000 -683.000000,540.000000 -683.000000C517.000000 -683.000000,490.000000 -681.000000,466.000000 -680.000000C441.000000 -679.000000,411.000000 -679.000000,386.000000 -679.000000C365.000000 -679.000000,338.000000 -680.000000,317.000000 -680.000000C296.000000 -680.000000,272.000000 -683.000000,252.000000 -683.000000C246.000000 -683.000000,231.000000 -683.000000,231.000000 -661.000000C231.000000 -647.000000,243.000000 -647.000000,263.000000 -647.000000C264.000000 -647.000000,283.000000 -647.000000,301.000000 -645.000000C322.000000 -643.000000,324.000000 -641.000000,324.000000 -631.000000C324.000000 -629.000000,324.000000 -624.000000,320.000000 -609.000000L187.000000 -78.000000C178.000000 -44.000000,176.000000 -36.000000,99.000000 -36.000000C82.000000 -36.000000,69.000000 -36.000000,69.000000 -15.000000C69.000000 -0.000000,81.000000 -0.000000,99.000000 -0.000000L602.000000 -0.000000C627.000000 -0.000000,628.000000 -1.000000,636.000000 -20.000000C646.000000 -47.000000,721.000000 -241.000000,721.000000 -249.000000C721.000000 -252.000000,719.000000 -263.000000,704.000000 -263.000000C692.000000 -263.000000,690.000000 -258.000000,684.000000 -242.000000C646.000000 -147.000000,602.000000 -36.000000,419.000000 -36.000000L306.000000 -36.000000C275.000000 -36.000000,274.000000 -37.000000,274.000000 -46.000000C274.000000 -47.000000,274.000000 -52.000000,278.000000 -67.000000"></path>
    </g>
    <g transform="scale(0.006974,0.006974)" id="GLYPHcmmi7_78">
      <path style="fill-rule: evenodd;" d="M834.000000 -574.000000C844.000000 -612.000000,860.000000 -645.000000,940.000000 -647.000000C945.000000 -647.000000,960.000000 -648.000000,960.000000 -669.000000C960.000000 -675.000000,955.000000 -683.000000,945.000000 -683.000000L841.000000 -683.000000L912.000000 -683.000000L875.000000 -679.000000L841.000000 -679.000000L817.000000 -679.000000L759.000000 -683.000000L735.000000 -683.000000C730.000000 -683.000000,715.000000 -683.000000,715.000000 -661.000000C715.000000 -648.000000,728.000000 -647.000000,737.000000 -647.000000C784.000000 -646.000000,801.000000 -631.000000,801.000000 -606.000000C801.000000 -598.000000,800.000000 -593.000000,797.000000 -582.000000L688.000000 -146.000000L434.000000 -666.000000C426.000000 -683.000000,424.000000 -683.000000,400.000000 -683.000000L263.000000 -683.000000C244.000000 -683.000000,231.000000 -683.000000,231.000000 -661.000000C231.000000 -647.000000,243.000000 -647.000000,264.000000 -647.000000C285.000000 -647.000000,307.000000 -646.000000,328.000000 -642.000000L194.000000 -107.000000C185.000000 -69.000000,168.000000 -39.000000,90.000000 -36.000000C83.000000 -36.000000,69.000000 -35.000000,69.000000 -15.000000C69.000000 -4.000000,77.000000 -0.000000,84.000000 -0.000000L188.000000 -0.000000L117.000000 -0.000000L154.000000 -4.000000L188.000000 -4.000000L212.000000 -4.000000L270.000000 -0.000000L294.000000 -0.000000C304.000000 -0.000000,314.000000 -5.000000,314.000000 -21.000000C314.000000 -35.000000,302.000000 -36.000000,291.000000 -36.000000C228.000000 -38.000000,228.000000 -64.000000,228.000000 -78.000000C228.000000 -82.000000,228.000000 -87.000000,232.000000 -103.000000L360.000000 -615.000000L652.000000 -17.000000C660.000000 -1.000000,664.000000 -0.000000,674.000000 -0.000000C690.000000 -0.000000,690.000000 -3.000000,695.000000 -21.000000"></path>
    </g>
    <g transform="scale(0.006974,0.006974)" id="GLYPHcmmi7_101">
      <path style="fill-rule: evenodd;" d="M224.000000 -228.000000C252.000000 -228.000000,331.000000 -230.000000,385.000000 -249.000000C459.000000 -275.000000,473.000000 -323.000000,473.000000 -353.000000C473.000000 -408.000000,418.000000 -441.000000,349.000000 -441.000000C229.000000 -441.000000,67.000000 -349.000000,67.000000 -178.000000C67.000000 -77.000000,130.000000 10.000000,247.000000 10.000000C416.000000 10.000000,495.000000 -89.000000,495.000000 -103.000000C495.000000 -109.000000,486.000000 -120.000000,478.000000 -120.000000C472.000000 -120.000000,470.000000 -118.000000,462.000000 -110.000000C384.000000 -18.000000,267.000000 -18.000000,249.000000 -18.000000C189.000000 -18.000000,149.000000 -58.000000,149.000000 -139.000000C149.000000 -153.000000,149.000000 -173.000000,161.000000 -228.000000M169.000000 -256.000000C210.000000 -401.000000,321.000000 -413.000000,349.000000 -413.000000C393.000000 -413.000000,430.000000 -391.000000,430.000000 -353.000000C430.000000 -256.000000,261.000000 -256.000000,218.000000 -256.000000"></path>
    </g>
    <g transform="scale(0.006974,0.006974)" id="GLYPHcmmi7_108">
      <path style="fill-rule: evenodd;" d="M282.000000 -664.000000C283.000000 -666.000000,286.000000 -679.000000,286.000000 -680.000000C286.000000 -685.000000,282.000000 -694.000000,270.000000 -694.000000C250.000000 -694.000000,167.000000 -686.000000,142.000000 -684.000000C135.000000 -683.000000,121.000000 -682.000000,121.000000 -661.000000C121.000000 -647.000000,135.000000 -647.000000,146.000000 -647.000000C194.000000 -647.000000,194.000000 -640.000000,194.000000 -632.000000C194.000000 -625.000000,192.000000 -619.000000,190.000000 -610.000000L66.000000 -116.000000C63.000000 -106.000000,62.000000 -95.000000,62.000000 -85.000000C62.000000 -21.000000,119.000000 10.000000,167.000000 10.000000C191.000000 10.000000,221.000000 2.000000,247.000000 -43.000000C268.000000 -80.000000,282.000000 -139.000000,282.000000 -143.000000C282.000000 -156.000000,269.000000 -156.000000,266.000000 -156.000000C252.000000 -156.000000,250.000000 -150.000000,246.000000 -132.000000C233.000000 -82.000000,214.000000 -18.000000,171.000000 -18.000000C144.000000 -18.000000,137.000000 -43.000000,137.000000 -67.000000C137.000000 -78.000000,140.000000 -97.000000,143.000000 -108.000000"></path>
    </g>
    <g transform="scale(0.006974,0.006974)" id="GLYPHcmmi7_109">
      <path style="fill-rule: evenodd;" d="M434.000000 -81.000000C429.000000 -61.000000,420.000000 -27.000000,420.000000 -22.000000C420.000000 -0.000000,438.000000 10.000000,454.000000 10.000000C472.000000 10.000000,488.000000 -3.000000,493.000000 -12.000000C498.000000 -21.000000,506.000000 -53.000000,511.000000 -74.000000C516.000000 -93.000000,527.000000 -139.000000,533.000000 -164.000000C539.000000 -186.000000,545.000000 -208.000000,550.000000 -231.000000C561.000000 -274.000000,561.000000 -276.000000,581.000000 -307.000000C613.000000 -356.000000,663.000000 -413.000000,741.000000 -413.000000C797.000000 -413.000000,800.000000 -367.000000,800.000000 -343.000000C800.000000 -283.000000,757.000000 -172.000000,741.000000 -130.000000C730.000000 -102.000000,726.000000 -93.000000,726.000000 -76.000000C726.000000 -23.000000,770.000000 10.000000,821.000000 10.000000C921.000000 10.000000,965.000000 -128.000000,965.000000 -143.000000C965.000000 -156.000000,952.000000 -156.000000,949.000000 -156.000000C935.000000 -156.000000,934.000000 -150.000000,930.000000 -139.000000C907.000000 -59.000000,864.000000 -18.000000,824.000000 -18.000000C803.000000 -18.000000,799.000000 -32.000000,799.000000 -53.000000C799.000000 -76.000000,804.000000 -89.000000,822.000000 -134.000000C834.000000 -165.000000,875.000000 -271.000000,875.000000 -327.000000C875.000000 -343.000000,875.000000 -385.000000,838.000000 -414.000000C821.000000 -427.000000,792.000000 -441.000000,745.000000 -441.000000C655.000000 -441.000000,600.000000 -382.000000,568.000000 -340.000000C560.000000 -425.000000,489.000000 -441.000000,438.000000 -441.000000C355.000000 -441.000000,299.000000 -390.000000,269.000000 -350.000000C262.000000 -419.000000,203.000000 -441.000000,162.000000 -441.000000C119.000000 -441.000000,96.000000 -410.000000,83.000000 -387.000000C61.000000 -350.000000,47.000000 -293.000000,47.000000 -288.000000C47.000000 -275.000000,61.000000 -275.000000,64.000000 -275.000000C78.000000 -275.000000,79.000000 -278.000000,86.000000 -305.000000C101.000000 -364.000000,120.000000 -413.000000,159.000000 -413.000000C185.000000 -413.000000,192.000000 -391.000000,192.000000 -364.000000C192.000000 -345.000000,183.000000 -308.000000,176.000000 -281.000000C169.000000 -254.000000,159.000000 -213.000000,154.000000 -191.000000L122.000000 -63.000000C118.000000 -50.000000,112.000000 -25.000000,112.000000 -22.000000C112.000000 -0.000000,130.000000 10.000000,146.000000 10.000000C164.000000 10.000000,180.000000 -3.000000,185.000000 -12.000000C190.000000 -21.000000,198.000000 -53.000000,203.000000 -74.000000C208.000000 -93.000000,219.000000 -139.000000,225.000000 -164.000000C231.000000 -186.000000,237.000000 -208.000000,242.000000 -231.000000C253.000000 -272.000000,255.000000 -280.000000,284.000000 -321.000000C312.000000 -361.000000,359.000000 -413.000000,434.000000 -413.000000C492.000000 -413.000000,493.000000 -362.000000,493.000000 -343.000000C493.000000 -318.000000,490.000000 -305.000000,476.000000 -249.000000"></path>
    </g>
    <g transform="scale(0.006974,0.006974)" id="GLYPHcmmi7_115">
      <path style="fill-rule: evenodd;" d="M431.000000 -376.000000C405.000000 -370.000000,389.000000 -349.000000,389.000000 -329.000000C389.000000 -306.000000,409.000000 -297.000000,422.000000 -297.000000C432.000000 -297.000000,470.000000 -303.000000,470.000000 -354.000000C470.000000 -419.000000,398.000000 -441.000000,337.000000 -441.000000C181.000000 -441.000000,153.000000 -326.000000,153.000000 -295.000000C153.000000 -258.000000,174.000000 -234.000000,188.000000 -222.000000C214.000000 -202.000000,232.000000 -198.000000,301.000000 -186.000000C322.000000 -182.000000,386.000000 -170.000000,386.000000 -120.000000C386.000000 -103.000000,375.000000 -65.000000,333.000000 -40.000000C294.000000 -18.000000,245.000000 -18.000000,233.000000 -18.000000C193.000000 -18.000000,136.000000 -27.000000,113.000000 -60.000000C146.000000 -64.000000,168.000000 -89.000000,168.000000 -117.000000C168.000000 -142.000000,150.000000 -154.000000,129.000000 -154.000000C100.000000 -154.000000,71.000000 -131.000000,71.000000 -87.000000C71.000000 -27.000000,135.000000 10.000000,232.000000 10.000000C416.000000 10.000000,450.000000 -116.000000,450.000000 -155.000000C450.000000 -247.000000,349.000000 -265.000000,312.000000 -272.000000C303.000000 -274.000000,278.000000 -278.000000,272.000000 -280.000000C235.000000 -287.000000,217.000000 -308.000000,217.000000 -330.000000C217.000000 -353.000000,235.000000 -380.000000,257.000000 -394.000000C284.000000 -411.000000,319.000000 -413.000000,336.000000 -413.000000C357.000000 -413.000000,409.000000 -410.000000,431.000000 -376.000000"></path>
    </g>
    <g transform="scale(0.006974,0.006974)" id="GLYPHcmmi7_117">
      <path style="fill-rule: evenodd;" d="M423.000000 -162.000000C418.000000 -142.000000,409.000000 -104.000000,407.000000 -103.000000C388.000000 -72.000000,348.000000 -18.000000,286.000000 -18.000000C217.000000 -18.000000,217.000000 -83.000000,217.000000 -101.000000C217.000000 -160.000000,245.000000 -231.000000,273.000000 -304.000000C281.000000 -324.000000,287.000000 -339.000000,287.000000 -355.000000C287.000000 -407.000000,243.000000 -441.000000,192.000000 -441.000000C92.000000 -441.000000,47.000000 -304.000000,47.000000 -288.000000C47.000000 -275.000000,61.000000 -275.000000,64.000000 -275.000000C78.000000 -275.000000,79.000000 -280.000000,82.000000 -291.000000C106.000000 -373.000000,150.000000 -413.000000,189.000000 -413.000000C206.000000 -413.000000,214.000000 -402.000000,214.000000 -378.000000C214.000000 -355.000000,206.000000 -334.000000,196.000000 -311.000000C142.000000 -173.000000,142.000000 -144.000000,142.000000 -117.000000C142.000000 -100.000000,142.000000 -54.000000,179.000000 -22.000000C208.000000 2.000000,247.000000 10.000000,282.000000 10.000000C345.000000 10.000000,379.000000 -24.000000,412.000000 -56.000000C434.000000 8.000000,501.000000 10.000000,513.000000 10.000000C547.000000 10.000000,573.000000 -10.000000,592.000000 -43.000000C614.000000 -82.000000,628.000000 -140.000000,628.000000 -143.000000C628.000000 -156.000000,614.000000 -156.000000,611.000000 -156.000000C597.000000 -156.000000,596.000000 -152.000000,589.000000 -125.000000C577.000000 -78.000000,558.000000 -18.000000,516.000000 -18.000000C490.000000 -18.000000,483.000000 -41.000000,483.000000 -67.000000C483.000000 -84.000000,491.000000 -120.000000,498.000000 -146.000000C505.000000 -173.000000,515.000000 -214.000000,520.000000 -236.000000L543.000000 -325.000000C549.000000 -350.000000,560.000000 -394.000000,560.000000 -399.000000C560.000000 -419.000000,544.000000 -431.000000,527.000000 -431.000000C490.000000 -431.000000,483.000000 -402.000000,475.000000 -370.000000"></path>
    </g>
    <g transform="scale(0.006974,0.006974)" id="GLYPHcmmi7_118">
      <path style="fill-rule: evenodd;" d="M534.000000 -363.000000C534.000000 -441.000000,487.000000 -442.000000,484.000000 -442.000000C458.000000 -442.000000,430.000000 -415.000000,430.000000 -389.000000C430.000000 -372.000000,440.000000 -364.000000,447.000000 -358.000000C464.000000 -344.000000,484.000000 -318.000000,484.000000 -278.000000C484.000000 -233.000000,418.000000 -18.000000,299.000000 -18.000000C218.000000 -18.000000,218.000000 -90.000000,218.000000 -107.000000C218.000000 -153.000000,236.000000 -209.000000,273.000000 -302.000000C281.000000 -323.000000,287.000000 -338.000000,287.000000 -355.000000C287.000000 -407.000000,243.000000 -441.000000,192.000000 -441.000000C92.000000 -441.000000,47.000000 -304.000000,47.000000 -288.000000C47.000000 -275.000000,61.000000 -275.000000,64.000000 -275.000000C78.000000 -275.000000,79.000000 -280.000000,82.000000 -291.000000C106.000000 -373.000000,149.000000 -413.000000,189.000000 -413.000000C206.000000 -413.000000,214.000000 -402.000000,214.000000 -378.000000C214.000000 -355.000000,206.000000 -334.000000,196.000000 -311.000000C153.000000 -200.000000,142.000000 -157.000000,142.000000 -121.000000C142.000000 -22.000000,220.000000 10.000000,296.000000 10.000000C464.000000 10.000000,534.000000 -281.000000,534.000000 -363.000000"></path>
    </g>
    <g transform="scale(0.009963,0.009963)" id="GLYPHcmr10_50">
      <path style="fill-rule: evenodd;" d="M127.000000 -77.000000L233.000000 -180.000000C389.000000 -318.000000,449.000000 -372.000000,449.000000 -472.000000C449.000000 -586.000000,359.000000 -666.000000,237.000000 -666.000000C124.000000 -666.000000,50.000000 -574.000000,50.000000 -485.000000C50.000000 -429.000000,100.000000 -429.000000,103.000000 -429.000000C120.000000 -429.000000,155.000000 -441.000000,155.000000 -482.000000C155.000000 -508.000000,137.000000 -534.000000,102.000000 -534.000000C94.000000 -534.000000,92.000000 -534.000000,89.000000 -533.000000C112.000000 -598.000000,166.000000 -635.000000,224.000000 -635.000000C315.000000 -635.000000,358.000000 -554.000000,358.000000 -472.000000C358.000000 -392.000000,308.000000 -313.000000,253.000000 -251.000000L61.000000 -37.000000C50.000000 -26.000000,50.000000 -24.000000,50.000000 -0.000000L421.000000 -0.000000L449.000000 -174.000000L424.000000 -174.000000C419.000000 -144.000000,412.000000 -100.000000,402.000000 -85.000000C395.000000 -77.000000,329.000000 -77.000000,307.000000 -77.000000"></path>
    </g>
    <g transform="scale(0.006974,0.006974)" id="GLYPHcmsy7_0">
      <path style="fill-rule: evenodd;" d="M744.000000 -226.000000C760.000000 -226.000000,784.000000 -226.000000,784.000000 -250.000000C784.000000 -275.000000,761.000000 -275.000000,744.000000 -275.000000L148.000000 -275.000000C132.000000 -275.000000,108.000000 -275.000000,108.000000 -251.000000C108.000000 -226.000000,131.000000 -226.000000,148.000000 -226.000000"></path>
    </g>
    <g transform="scale(0.006974,0.006974)" id="GLYPHcmr7_49">
      <path style="fill-rule: evenodd;" d="M335.000000 -636.000000C335.000000 -663.000000,333.000000 -664.000000,305.000000 -664.000000C241.000000 -601.000000,150.000000 -600.000000,109.000000 -600.000000L109.000000 -564.000000C133.000000 -564.000000,199.000000 -564.000000,254.000000 -592.000000L254.000000 -82.000000C254.000000 -49.000000,254.000000 -36.000000,154.000000 -36.000000L116.000000 -36.000000L116.000000 -0.000000L294.000000 -0.000000L134.000000 -1.000000L257.000000 -4.000000L294.000000 -4.000000L325.000000 -4.000000L451.000000 -1.000000L473.000000 -0.000000L473.000000 -36.000000L435.000000 -36.000000C335.000000 -36.000000,335.000000 -49.000000,335.000000 -82.000000"></path>
    </g>
  </defs>
  <g transform="matrix(1.600006,-0.000000,-0.000000,1.600006,0.530609 13.766663)" style="fill: rgb(0.000000%,0.000000%,0.000000%);">
    <use xlink:href="#GLYPHcmr10_50"></use>
  </g>
  <g transform="matrix(1.600006,-0.000000,-0.000000,1.600006,8.500732 7.981995)" style="fill: rgb(0.000000%,0.000000%,0.000000%);">
    <use xlink:href="#GLYPHcmmi7_78"></use>
  </g>
  <g transform="matrix(1.600006,-0.000000,-0.000000,1.600006,19.794067 7.981995)" style="fill: rgb(0.000000%,0.000000%,0.000000%);">
    <use xlink:href="#GLYPHcmmi7_117"></use>
    <use xlink:href="#GLYPHcmmi7_109" x="4.728124"></use>
    <use xlink:href="#GLYPHcmmi7_76" x="11.824354"></use>
    <use xlink:href="#GLYPHcmmi7_101" x="17.310587"></use>
    <use xlink:href="#GLYPHcmmi7_118" x="21.104772"></use>
  </g>
  <g transform="matrix(1.600006,-0.000000,-0.000000,1.600006,60.211472 7.981995)" style="fill: rgb(0.000000%,0.000000%,0.000000%);">
    <use xlink:href="#GLYPHcmmi7_101"></use>
    <use xlink:href="#GLYPHcmmi7_108" x="3.794186"></use>
  </g>
  <g transform="matrix(1.600006,-0.000000,-0.000000,1.600006,70.355209 7.981995)" style="fill: rgb(0.000000%,0.000000%,0.000000%);">
    <use xlink:href="#GLYPHcmmi7_115"></use>
  </g>
  <g transform="matrix(1.600006,-0.000000,-0.000000,1.600006,76.371719 7.981995)" style="fill: rgb(0.000000%,0.000000%,0.000000%);">
    <use xlink:href="#GLYPHcmsy7_0"></use>
  </g>
  <g transform="matrix(1.600006,-0.000000,-0.000000,1.600006,86.334305 7.981995)" style="fill: rgb(0.000000%,0.000000%,0.000000%);">
    <use xlink:href="#GLYPHcmr7_49"></use>
  </g>
</svg></span> using,
e.g., <a href="dilation_circle.html"><code><span data-if="hdevelop" style="display:inline">dilation_circle</span><span data-if="c" style="display:none">dilation_circle</span><span data-if="cpp" style="display:none">DilationCircle</span><span data-if="com" style="display:none">DilationCircle</span><span data-if="dotnet" style="display:none">DilationCircle</span><span data-if="python" style="display:none">dilation_circle</span></code></a>.
</p>
<p>When tracking the matches through the image pyramid, on each level,
some less promising matches are rejected based on <a href="#NumMatches"><i><code><span data-if="hdevelop" style="display:inline">NumMatches</span><span data-if="c" style="display:none">NumMatches</span><span data-if="cpp" style="display:none">NumMatches</span><span data-if="com" style="display:none">NumMatches</span><span data-if="dotnet" style="display:none">numMatches</span><span data-if="python" style="display:none">num_matches</span></code></i></a>. Thus,
it is possible that some matches are rejected that would have had a higher
score on the lowest pyramid level. Due to this, for example, the found
match for <a href="#NumMatches"><i><code><span data-if="hdevelop" style="display:inline">NumMatches</span><span data-if="c" style="display:none">NumMatches</span><span data-if="cpp" style="display:none">NumMatches</span><span data-if="com" style="display:none">NumMatches</span><span data-if="dotnet" style="display:none">numMatches</span><span data-if="python" style="display:none">num_matches</span></code></i></a> set to <i>1</i> might be
different from the match with the highest score returned when setting
<a href="#NumMatches"><i><code><span data-if="hdevelop" style="display:inline">NumMatches</span><span data-if="c" style="display:none">NumMatches</span><span data-if="cpp" style="display:none">NumMatches</span><span data-if="com" style="display:none">NumMatches</span><span data-if="dotnet" style="display:none">numMatches</span><span data-if="python" style="display:none">num_matches</span></code></i></a> to <i>0</i> or &gt; <i>1</i>.
</p>
<h3>Recommendations</h3>
<p>If multiple objects with a similar score are expected, but only the one
with the highest score should be returned, it might be preferable to raise
<a href="#NumMatches"><i><code><span data-if="hdevelop" style="display:inline">NumMatches</span><span data-if="c" style="display:none">NumMatches</span><span data-if="cpp" style="display:none">NumMatches</span><span data-if="com" style="display:none">NumMatches</span><span data-if="dotnet" style="display:none">numMatches</span><span data-if="python" style="display:none">num_matches</span></code></i></a>, and then select the match with the highest score.
</p>
<p>To get a meaningful score value and to avoid erroneous matches,
we recommend to always combine the allowance of a deformation with a
subpixel extraction that applies a least-squares adjustment.
If the subpixel extraction and/or the maximum object deformation is
specified separately for each component, for each component in
<a href="#ComponentModelID"><i><code><span data-if="hdevelop" style="display:inline">ComponentModelID</span><span data-if="c" style="display:none">ComponentModelID</span><span data-if="cpp" style="display:none">ComponentModelID</span><span data-if="com" style="display:none">ComponentModelID</span><span data-if="dotnet" style="display:none">componentModelID</span><span data-if="python" style="display:none">component_model_id</span></code></i></a> exactly one value for the subpixel extraction
must be passed in <a href="#SubPixelComp"><i><code><span data-if="hdevelop" style="display:inline">SubPixelComp</span><span data-if="c" style="display:none">SubPixelComp</span><span data-if="cpp" style="display:none">SubPixelComp</span><span data-if="com" style="display:none">SubPixelComp</span><span data-if="dotnet" style="display:none">subPixelComp</span><span data-if="python" style="display:none">sub_pixel_comp</span></code></i></a>.
After each value for the subpixel extraction optionally a second value can
be passed, which describes the maximum object deformation of the
corresponding mode. If for a certain component no value for the maximum
object deformation is passed, the component is searched without taking
deformations into account.
Further details can be found in the documentation of
<a href="find_shape_models.html"><code><span data-if="hdevelop" style="display:inline">find_shape_models</span><span data-if="c" style="display:none">find_shape_models</span><span data-if="cpp" style="display:none">FindShapeModels</span><span data-if="com" style="display:none">FindShapeModels</span><span data-if="dotnet" style="display:none">FindShapeModels</span><span data-if="python" style="display:none">find_shape_models</span></code></a>.
</p>
<h2 id="sec_execution">运行信息</h2>
<ul>
  <li>多线程类型:可重入(与非独占操作符并行运行)。</li>
<li>多线程作用域:全局(可以从任何线程调用)。</li>
  <li>未经并行化处理。</li>
</ul>
<h2 id="sec_parameters">参数表</h2>
  <div class="par">
<div class="parhead">
<span id="Image" class="parname"><b><code><span data-if="hdevelop" style="display:inline">Image</span><span data-if="c" style="display:none">Image</span><span data-if="cpp" style="display:none">Image</span><span data-if="com" style="display:none">Image</span><span data-if="dotnet" style="display:none">image</span><span data-if="python" style="display:none">image</span></code></b> (input_object)  </span><span>(multichannel-)image <code>→</code> <span data-if="hdevelop" style="display:inline">object</span><span data-if="dotnet" style="display:none"><a href="HImage.html">HImage</a></span><span data-if="python" style="display:none">HObject</span><span data-if="cpp" style="display:none"><a href="HImage.html">HImage</a></span><span data-if="c" style="display:none">Hobject</span> (byte / uint2)</span>
</div>
<p class="pardesc">Input image in which the component model should be
found.</p>
</div>
  <div class="par">
<div class="parhead">
<span id="ComponentModelID" class="parname"><b><code><span data-if="hdevelop" style="display:inline">ComponentModelID</span><span data-if="c" style="display:none">ComponentModelID</span><span data-if="cpp" style="display:none">ComponentModelID</span><span data-if="com" style="display:none">ComponentModelID</span><span data-if="dotnet" style="display:none">componentModelID</span><span data-if="python" style="display:none">component_model_id</span></code></b> (input_control)  </span><span>component_model <code>→</code> <span data-if="dotnet" style="display:none"><a href="HComponentModel.html">HComponentModel</a>, </span><span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">HHandle</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (handle)</span><span data-if="dotnet" style="display:none"> (<i>IntPtr</i>)</span><span data-if="cpp" style="display:none"> (<i>HHandle</i>)</span><span data-if="c" style="display:none"> (<i>handle</i>)</span></span>
</div>
<p class="pardesc">Handle of the component model.</p>
</div>
  <div class="par">
<div class="parhead">
<span id="RootComponent" class="parname"><b><code><span data-if="hdevelop" style="display:inline">RootComponent</span><span data-if="c" style="display:none">RootComponent</span><span data-if="cpp" style="display:none">RootComponent</span><span data-if="com" style="display:none">RootComponent</span><span data-if="dotnet" style="display:none">rootComponent</span><span data-if="python" style="display:none">root_component</span></code></b> (input_control)  </span><span>integer(-array) <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">MaybeSequence[int]</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (integer)</span><span data-if="dotnet" style="display:none"> (<i>int</i> / </span><span data-if="dotnet" style="display:none">long)</span><span data-if="cpp" style="display:none"> (<i>Hlong</i>)</span><span data-if="c" style="display:none"> (<i>Hlong</i>)</span></span>
</div>
<p class="pardesc">Index of the root component.</p>
<p class="pardesc"><span class="parcat">Suggested values:
      </span>0, 1, 2, 3, 4, 5, 6, 7, 8</p>
</div>
  <div class="par">
<div class="parhead">
<span id="AngleStartRoot" class="parname"><b><code><span data-if="hdevelop" style="display:inline">AngleStartRoot</span><span data-if="c" style="display:none">AngleStartRoot</span><span data-if="cpp" style="display:none">AngleStartRoot</span><span data-if="com" style="display:none">AngleStartRoot</span><span data-if="dotnet" style="display:none">angleStartRoot</span><span data-if="python" style="display:none">angle_start_root</span></code></b> (input_control)  </span><span>angle.rad(-array) <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">MaybeSequence[float]</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (real)</span><span data-if="dotnet" style="display:none"> (<i>double</i>)</span><span data-if="cpp" style="display:none"> (<i>double</i>)</span><span data-if="c" style="display:none"> (<i>double</i>)</span></span>
</div>
<p class="pardesc">Smallest rotation of the root component</p>
<p class="pardesc"><span class="parcat">Default:
      </span>-0.39</p>
<p class="pardesc"><span class="parcat">Suggested values:
      </span>-3.14, -1.57, -0.79, -0.39, -0.20, 0.0</p>
</div>
  <div class="par">
<div class="parhead">
<span id="AngleExtentRoot" class="parname"><b><code><span data-if="hdevelop" style="display:inline">AngleExtentRoot</span><span data-if="c" style="display:none">AngleExtentRoot</span><span data-if="cpp" style="display:none">AngleExtentRoot</span><span data-if="com" style="display:none">AngleExtentRoot</span><span data-if="dotnet" style="display:none">angleExtentRoot</span><span data-if="python" style="display:none">angle_extent_root</span></code></b> (input_control)  </span><span>angle.rad(-array) <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">MaybeSequence[float]</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (real)</span><span data-if="dotnet" style="display:none"> (<i>double</i>)</span><span data-if="cpp" style="display:none"> (<i>double</i>)</span><span data-if="c" style="display:none"> (<i>double</i>)</span></span>
</div>
<p class="pardesc">Extent of the rotation of the root component.</p>
<p class="pardesc"><span class="parcat">Default:
      </span>0.79</p>
<p class="pardesc"><span class="parcat">Suggested values:
      </span>6.28, 3.14, 1.57, 0.79, 0.39, 0.0</p>
<p class="pardesc"><span class="parcat">Restriction:
      </span><code>AngleExtentRoot &gt;= 0</code></p>
</div>
  <div class="par">
<div class="parhead">
<span id="MinScore" class="parname"><b><code><span data-if="hdevelop" style="display:inline">MinScore</span><span data-if="c" style="display:none">MinScore</span><span data-if="cpp" style="display:none">MinScore</span><span data-if="com" style="display:none">MinScore</span><span data-if="dotnet" style="display:none">minScore</span><span data-if="python" style="display:none">min_score</span></code></b> (input_control)  </span><span>real <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">float</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (real)</span><span data-if="dotnet" style="display:none"> (<i>double</i>)</span><span data-if="cpp" style="display:none"> (<i>double</i>)</span><span data-if="c" style="display:none"> (<i>double</i>)</span></span>
</div>
<p class="pardesc">Minimum score of the instances of the component
model to be found.</p>
<p class="pardesc"><span class="parcat">Default:
      </span>0.5</p>
<p class="pardesc"><span class="parcat">Suggested values:
      </span>0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1.0</p>
<p class="pardesc"><span class="parcat">Minimum increment:
      </span>0.01</p>
<p class="pardesc"><span class="parcat">Recommended increment:
      </span>0.05</p>
<p class="pardesc"><span class="parcat">Restriction:
      </span><code>0 &lt;= MinScore &amp;&amp; MinScore &lt;= 1</code></p>
</div>
  <div class="par">
<div class="parhead">
<span id="NumMatches" class="parname"><b><code><span data-if="hdevelop" style="display:inline">NumMatches</span><span data-if="c" style="display:none">NumMatches</span><span data-if="cpp" style="display:none">NumMatches</span><span data-if="com" style="display:none">NumMatches</span><span data-if="dotnet" style="display:none">numMatches</span><span data-if="python" style="display:none">num_matches</span></code></b> (input_control)  </span><span>integer <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">int</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (integer)</span><span data-if="dotnet" style="display:none"> (<i>int</i> / </span><span data-if="dotnet" style="display:none">long)</span><span data-if="cpp" style="display:none"> (<i>Hlong</i>)</span><span data-if="c" style="display:none"> (<i>Hlong</i>)</span></span>
</div>
<p class="pardesc">Number of instances of the component model to be
found (or 0 for all matches).</p>
<p class="pardesc"><span class="parcat">Default:
      </span>1</p>
<p class="pardesc"><span class="parcat">Suggested values:
      </span>0, 1, 2, 3, 4, 5, 10, 20</p>
</div>
  <div class="par">
<div class="parhead">
<span id="MaxOverlap" class="parname"><b><code><span data-if="hdevelop" style="display:inline">MaxOverlap</span><span data-if="c" style="display:none">MaxOverlap</span><span data-if="cpp" style="display:none">MaxOverlap</span><span data-if="com" style="display:none">MaxOverlap</span><span data-if="dotnet" style="display:none">maxOverlap</span><span data-if="python" style="display:none">max_overlap</span></code></b> (input_control)  </span><span>real <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">float</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (real)</span><span data-if="dotnet" style="display:none"> (<i>double</i>)</span><span data-if="cpp" style="display:none"> (<i>double</i>)</span><span data-if="c" style="display:none"> (<i>double</i>)</span></span>
</div>
<p class="pardesc">Maximum overlap of the instances of the
component models to be found.</p>
<p class="pardesc"><span class="parcat">Default:
      </span>0.5</p>
<p class="pardesc"><span class="parcat">Suggested values:
      </span>0.0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1.0</p>
<p class="pardesc"><span class="parcat">Minimum increment:
      </span>0.01</p>
<p class="pardesc"><span class="parcat">Recommended increment:
      </span>0.05</p>
<p class="pardesc"><span class="parcat">Restriction:
      </span><code>0 &lt;= MaxOverlap &amp;&amp; MaxOverlap &lt;= 1</code></p>
</div>
  <div class="par">
<div class="parhead">
<span id="IfRootNotFound" class="parname"><b><code><span data-if="hdevelop" style="display:inline">IfRootNotFound</span><span data-if="c" style="display:none">IfRootNotFound</span><span data-if="cpp" style="display:none">IfRootNotFound</span><span data-if="com" style="display:none">IfRootNotFound</span><span data-if="dotnet" style="display:none">ifRootNotFound</span><span data-if="python" style="display:none">if_root_not_found</span></code></b> (input_control)  </span><span>string <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">str</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (string)</span><span data-if="dotnet" style="display:none"> (<i>string</i>)</span><span data-if="cpp" style="display:none"> (<i>HString</i>)</span><span data-if="c" style="display:none"> (<i>char*</i>)</span></span>
</div>
<p class="pardesc">Behavior if the root component is missing.</p>
<p class="pardesc"><span class="parcat">Default:
      </span>
    <span data-if="hdevelop" style="display:inline">'stop_search'</span>
    <span data-if="c" style="display:none">"stop_search"</span>
    <span data-if="cpp" style="display:none">"stop_search"</span>
    <span data-if="com" style="display:none">"stop_search"</span>
    <span data-if="dotnet" style="display:none">"stop_search"</span>
    <span data-if="python" style="display:none">"stop_search"</span>
</p>
<p class="pardesc"><span class="parcat">List of values:
      </span><span data-if="hdevelop" style="display:inline">'select_new_root'</span><span data-if="c" style="display:none">"select_new_root"</span><span data-if="cpp" style="display:none">"select_new_root"</span><span data-if="com" style="display:none">"select_new_root"</span><span data-if="dotnet" style="display:none">"select_new_root"</span><span data-if="python" style="display:none">"select_new_root"</span>, <span data-if="hdevelop" style="display:inline">'stop_search'</span><span data-if="c" style="display:none">"stop_search"</span><span data-if="cpp" style="display:none">"stop_search"</span><span data-if="com" style="display:none">"stop_search"</span><span data-if="dotnet" style="display:none">"stop_search"</span><span data-if="python" style="display:none">"stop_search"</span></p>
</div>
  <div class="par">
<div class="parhead">
<span id="IfComponentNotFound" class="parname"><b><code><span data-if="hdevelop" style="display:inline">IfComponentNotFound</span><span data-if="c" style="display:none">IfComponentNotFound</span><span data-if="cpp" style="display:none">IfComponentNotFound</span><span data-if="com" style="display:none">IfComponentNotFound</span><span data-if="dotnet" style="display:none">ifComponentNotFound</span><span data-if="python" style="display:none">if_component_not_found</span></code></b> (input_control)  </span><span>string <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">str</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (string)</span><span data-if="dotnet" style="display:none"> (<i>string</i>)</span><span data-if="cpp" style="display:none"> (<i>HString</i>)</span><span data-if="c" style="display:none"> (<i>char*</i>)</span></span>
</div>
<p class="pardesc">Behavior if a component is missing.</p>
<p class="pardesc"><span class="parcat">Default:
      </span>
    <span data-if="hdevelop" style="display:inline">'prune_branch'</span>
    <span data-if="c" style="display:none">"prune_branch"</span>
    <span data-if="cpp" style="display:none">"prune_branch"</span>
    <span data-if="com" style="display:none">"prune_branch"</span>
    <span data-if="dotnet" style="display:none">"prune_branch"</span>
    <span data-if="python" style="display:none">"prune_branch"</span>
</p>
<p class="pardesc"><span class="parcat">List of values:
      </span><span data-if="hdevelop" style="display:inline">'prune_branch'</span><span data-if="c" style="display:none">"prune_branch"</span><span data-if="cpp" style="display:none">"prune_branch"</span><span data-if="com" style="display:none">"prune_branch"</span><span data-if="dotnet" style="display:none">"prune_branch"</span><span data-if="python" style="display:none">"prune_branch"</span>, <span data-if="hdevelop" style="display:inline">'search_from_best'</span><span data-if="c" style="display:none">"search_from_best"</span><span data-if="cpp" style="display:none">"search_from_best"</span><span data-if="com" style="display:none">"search_from_best"</span><span data-if="dotnet" style="display:none">"search_from_best"</span><span data-if="python" style="display:none">"search_from_best"</span>, <span data-if="hdevelop" style="display:inline">'search_from_upper'</span><span data-if="c" style="display:none">"search_from_upper"</span><span data-if="cpp" style="display:none">"search_from_upper"</span><span data-if="com" style="display:none">"search_from_upper"</span><span data-if="dotnet" style="display:none">"search_from_upper"</span><span data-if="python" style="display:none">"search_from_upper"</span></p>
</div>
  <div class="par">
<div class="parhead">
<span id="PosePrediction" class="parname"><b><code><span data-if="hdevelop" style="display:inline">PosePrediction</span><span data-if="c" style="display:none">PosePrediction</span><span data-if="cpp" style="display:none">PosePrediction</span><span data-if="com" style="display:none">PosePrediction</span><span data-if="dotnet" style="display:none">posePrediction</span><span data-if="python" style="display:none">pose_prediction</span></code></b> (input_control)  </span><span>string <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">str</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (string)</span><span data-if="dotnet" style="display:none"> (<i>string</i>)</span><span data-if="cpp" style="display:none"> (<i>HString</i>)</span><span data-if="c" style="display:none"> (<i>char*</i>)</span></span>
</div>
<p class="pardesc">Pose prediction of components that are not found.</p>
<p class="pardesc"><span class="parcat">Default:
      </span>
    <span data-if="hdevelop" style="display:inline">'none'</span>
    <span data-if="c" style="display:none">"none"</span>
    <span data-if="cpp" style="display:none">"none"</span>
    <span data-if="com" style="display:none">"none"</span>
    <span data-if="dotnet" style="display:none">"none"</span>
    <span data-if="python" style="display:none">"none"</span>
</p>
<p class="pardesc"><span class="parcat">List of values:
      </span><span data-if="hdevelop" style="display:inline">'from_all'</span><span data-if="c" style="display:none">"from_all"</span><span data-if="cpp" style="display:none">"from_all"</span><span data-if="com" style="display:none">"from_all"</span><span data-if="dotnet" style="display:none">"from_all"</span><span data-if="python" style="display:none">"from_all"</span>, <span data-if="hdevelop" style="display:inline">'from_neighbors'</span><span data-if="c" style="display:none">"from_neighbors"</span><span data-if="cpp" style="display:none">"from_neighbors"</span><span data-if="com" style="display:none">"from_neighbors"</span><span data-if="dotnet" style="display:none">"from_neighbors"</span><span data-if="python" style="display:none">"from_neighbors"</span>, <span data-if="hdevelop" style="display:inline">'none'</span><span data-if="c" style="display:none">"none"</span><span data-if="cpp" style="display:none">"none"</span><span data-if="com" style="display:none">"none"</span><span data-if="dotnet" style="display:none">"none"</span><span data-if="python" style="display:none">"none"</span></p>
</div>
  <div class="par">
<div class="parhead">
<span id="MinScoreComp" class="parname"><b><code><span data-if="hdevelop" style="display:inline">MinScoreComp</span><span data-if="c" style="display:none">MinScoreComp</span><span data-if="cpp" style="display:none">MinScoreComp</span><span data-if="com" style="display:none">MinScoreComp</span><span data-if="dotnet" style="display:none">minScoreComp</span><span data-if="python" style="display:none">min_score_comp</span></code></b> (input_control)  </span><span>real(-array) <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">MaybeSequence[float]</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (real)</span><span data-if="dotnet" style="display:none"> (<i>double</i>)</span><span data-if="cpp" style="display:none"> (<i>double</i>)</span><span data-if="c" style="display:none"> (<i>double</i>)</span></span>
</div>
<p class="pardesc">Minimum score of the instances of the components to
be found.</p>
<p class="pardesc"><span class="parcat">Default:
      </span>0.5</p>
<p class="pardesc"><span class="parcat">Suggested values:
      </span>0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1.0</p>
<p class="pardesc"><span class="parcat">Minimum increment:
      </span>0.01</p>
<p class="pardesc"><span class="parcat">Recommended increment:
      </span>0.05</p>
<p class="pardesc"><span class="parcat">Restriction:
      </span><code>0 &lt;= MinScoreComp &amp;&amp; MinScoreComp &lt;= 1</code></p>
</div>
  <div class="par">
<div class="parhead">
<span id="SubPixelComp" class="parname"><b><code><span data-if="hdevelop" style="display:inline">SubPixelComp</span><span data-if="c" style="display:none">SubPixelComp</span><span data-if="cpp" style="display:none">SubPixelComp</span><span data-if="com" style="display:none">SubPixelComp</span><span data-if="dotnet" style="display:none">subPixelComp</span><span data-if="python" style="display:none">sub_pixel_comp</span></code></b> (input_control)  </span><span>string(-array) <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">MaybeSequence[str]</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (string)</span><span data-if="dotnet" style="display:none"> (<i>string</i>)</span><span data-if="cpp" style="display:none"> (<i>HString</i>)</span><span data-if="c" style="display:none"> (<i>char*</i>)</span></span>
</div>
<p class="pardesc">Subpixel accuracy of the component poses if not
equal to <i><span data-if="hdevelop" style="display:inline">'none'</span><span data-if="c" style="display:none">"none"</span><span data-if="cpp" style="display:none">"none"</span><span data-if="com" style="display:none">"none"</span><span data-if="dotnet" style="display:none">"none"</span><span data-if="python" style="display:none">"none"</span></i>.</p>
<p class="pardesc"><span class="parcat">Default:
      </span>
    <span data-if="hdevelop" style="display:inline">'least_squares'</span>
    <span data-if="c" style="display:none">"least_squares"</span>
    <span data-if="cpp" style="display:none">"least_squares"</span>
    <span data-if="com" style="display:none">"least_squares"</span>
    <span data-if="dotnet" style="display:none">"least_squares"</span>
    <span data-if="python" style="display:none">"least_squares"</span>
</p>
<p class="pardesc"><span class="parcat">Suggested values:
      </span><span data-if="hdevelop" style="display:inline">'none'</span><span data-if="c" style="display:none">"none"</span><span data-if="cpp" style="display:none">"none"</span><span data-if="com" style="display:none">"none"</span><span data-if="dotnet" style="display:none">"none"</span><span data-if="python" style="display:none">"none"</span>, <span data-if="hdevelop" style="display:inline">'interpolation'</span><span data-if="c" style="display:none">"interpolation"</span><span data-if="cpp" style="display:none">"interpolation"</span><span data-if="com" style="display:none">"interpolation"</span><span data-if="dotnet" style="display:none">"interpolation"</span><span data-if="python" style="display:none">"interpolation"</span>, <span data-if="hdevelop" style="display:inline">'least_squares'</span><span data-if="c" style="display:none">"least_squares"</span><span data-if="cpp" style="display:none">"least_squares"</span><span data-if="com" style="display:none">"least_squares"</span><span data-if="dotnet" style="display:none">"least_squares"</span><span data-if="python" style="display:none">"least_squares"</span>, <span data-if="hdevelop" style="display:inline">'least_squares_high'</span><span data-if="c" style="display:none">"least_squares_high"</span><span data-if="cpp" style="display:none">"least_squares_high"</span><span data-if="com" style="display:none">"least_squares_high"</span><span data-if="dotnet" style="display:none">"least_squares_high"</span><span data-if="python" style="display:none">"least_squares_high"</span>, <span data-if="hdevelop" style="display:inline">'least_squares_very_high'</span><span data-if="c" style="display:none">"least_squares_very_high"</span><span data-if="cpp" style="display:none">"least_squares_very_high"</span><span data-if="com" style="display:none">"least_squares_very_high"</span><span data-if="dotnet" style="display:none">"least_squares_very_high"</span><span data-if="python" style="display:none">"least_squares_very_high"</span>, <span data-if="hdevelop" style="display:inline">'max_deformation 1'</span><span data-if="c" style="display:none">"max_deformation 1"</span><span data-if="cpp" style="display:none">"max_deformation 1"</span><span data-if="com" style="display:none">"max_deformation 1"</span><span data-if="dotnet" style="display:none">"max_deformation 1"</span><span data-if="python" style="display:none">"max_deformation 1"</span>, <span data-if="hdevelop" style="display:inline">'max_deformation 2'</span><span data-if="c" style="display:none">"max_deformation 2"</span><span data-if="cpp" style="display:none">"max_deformation 2"</span><span data-if="com" style="display:none">"max_deformation 2"</span><span data-if="dotnet" style="display:none">"max_deformation 2"</span><span data-if="python" style="display:none">"max_deformation 2"</span>, <span data-if="hdevelop" style="display:inline">'max_deformation 3'</span><span data-if="c" style="display:none">"max_deformation 3"</span><span data-if="cpp" style="display:none">"max_deformation 3"</span><span data-if="com" style="display:none">"max_deformation 3"</span><span data-if="dotnet" style="display:none">"max_deformation 3"</span><span data-if="python" style="display:none">"max_deformation 3"</span>, <span data-if="hdevelop" style="display:inline">'max_deformation 4'</span><span data-if="c" style="display:none">"max_deformation 4"</span><span data-if="cpp" style="display:none">"max_deformation 4"</span><span data-if="com" style="display:none">"max_deformation 4"</span><span data-if="dotnet" style="display:none">"max_deformation 4"</span><span data-if="python" style="display:none">"max_deformation 4"</span>, <span data-if="hdevelop" style="display:inline">'max_deformation 5'</span><span data-if="c" style="display:none">"max_deformation 5"</span><span data-if="cpp" style="display:none">"max_deformation 5"</span><span data-if="com" style="display:none">"max_deformation 5"</span><span data-if="dotnet" style="display:none">"max_deformation 5"</span><span data-if="python" style="display:none">"max_deformation 5"</span>, <span data-if="hdevelop" style="display:inline">'max_deformation 6'</span><span data-if="c" style="display:none">"max_deformation 6"</span><span data-if="cpp" style="display:none">"max_deformation 6"</span><span data-if="com" style="display:none">"max_deformation 6"</span><span data-if="dotnet" style="display:none">"max_deformation 6"</span><span data-if="python" style="display:none">"max_deformation 6"</span></p>
</div>
  <div class="par">
<div class="parhead">
<span id="NumLevelsComp" class="parname"><b><code><span data-if="hdevelop" style="display:inline">NumLevelsComp</span><span data-if="c" style="display:none">NumLevelsComp</span><span data-if="cpp" style="display:none">NumLevelsComp</span><span data-if="com" style="display:none">NumLevelsComp</span><span data-if="dotnet" style="display:none">numLevelsComp</span><span data-if="python" style="display:none">num_levels_comp</span></code></b> (input_control)  </span><span>integer(-array) <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">MaybeSequence[int]</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (integer)</span><span data-if="dotnet" style="display:none"> (<i>int</i> / </span><span data-if="dotnet" style="display:none">long)</span><span data-if="cpp" style="display:none"> (<i>Hlong</i>)</span><span data-if="c" style="display:none"> (<i>Hlong</i>)</span></span>
</div>
<p class="pardesc">Number of pyramid levels for the components used in
the matching
(and lowest pyramid level to use if
|<a href="#NumLevelsComp"><i><code><span data-if="hdevelop" style="display:inline">NumLevelsComp</span><span data-if="c" style="display:none">NumLevelsComp</span><span data-if="cpp" style="display:none">NumLevelsComp</span><span data-if="com" style="display:none">NumLevelsComp</span><span data-if="dotnet" style="display:none">numLevelsComp</span><span data-if="python" style="display:none">num_levels_comp</span></code></i></a>| = 2n).</p>
<p class="pardesc"><span class="parcat">Default:
      </span>0</p>
<p class="pardesc"><span class="parcat">List of values:
      </span>0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10</p>
</div>
  <div class="par">
<div class="parhead">
<span id="GreedinessComp" class="parname"><b><code><span data-if="hdevelop" style="display:inline">GreedinessComp</span><span data-if="c" style="display:none">GreedinessComp</span><span data-if="cpp" style="display:none">GreedinessComp</span><span data-if="com" style="display:none">GreedinessComp</span><span data-if="dotnet" style="display:none">greedinessComp</span><span data-if="python" style="display:none">greediness_comp</span></code></b> (input_control)  </span><span>real(-array) <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">MaybeSequence[float]</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (real)</span><span data-if="dotnet" style="display:none"> (<i>double</i>)</span><span data-if="cpp" style="display:none"> (<i>double</i>)</span><span data-if="c" style="display:none"> (<i>double</i>)</span></span>
</div>
<p class="pardesc">“Greediness” of the search heuristic for the
components (0: safe
but slow; 1: fast but matches may be missed).</p>
<p class="pardesc"><span class="parcat">Default:
      </span>0.9</p>
<p class="pardesc"><span class="parcat">Suggested values:
      </span>0.0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1.0</p>
<p class="pardesc"><span class="parcat">Minimum increment:
      </span>0.01</p>
<p class="pardesc"><span class="parcat">Recommended increment:
      </span>0.05</p>
<p class="pardesc"><span class="parcat">Restriction:
      </span><code>0 &lt;= GreedinessComp &amp;&amp; GreedinessComp &lt;= 1</code></p>
</div>
  <div class="par">
<div class="parhead">
<span id="ModelStart" class="parname"><b><code><span data-if="hdevelop" style="display:inline">ModelStart</span><span data-if="c" style="display:none">ModelStart</span><span data-if="cpp" style="display:none">ModelStart</span><span data-if="com" style="display:none">ModelStart</span><span data-if="dotnet" style="display:none">modelStart</span><span data-if="python" style="display:none">model_start</span></code></b> (output_control)  </span><span>integer(-array) <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">Sequence[int]</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (integer)</span><span data-if="dotnet" style="display:none"> (<i>int</i> / </span><span data-if="dotnet" style="display:none">long)</span><span data-if="cpp" style="display:none"> (<i>Hlong</i>)</span><span data-if="c" style="display:none"> (<i>Hlong</i>)</span></span>
</div>
<p class="pardesc">Start index of each found instance of the component
model in the tuples describing the component matches.</p>
</div>
  <div class="par">
<div class="parhead">
<span id="ModelEnd" class="parname"><b><code><span data-if="hdevelop" style="display:inline">ModelEnd</span><span data-if="c" style="display:none">ModelEnd</span><span data-if="cpp" style="display:none">ModelEnd</span><span data-if="com" style="display:none">ModelEnd</span><span data-if="dotnet" style="display:none">modelEnd</span><span data-if="python" style="display:none">model_end</span></code></b> (output_control)  </span><span>integer(-array) <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">Sequence[int]</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (integer)</span><span data-if="dotnet" style="display:none"> (<i>int</i> / </span><span data-if="dotnet" style="display:none">long)</span><span data-if="cpp" style="display:none"> (<i>Hlong</i>)</span><span data-if="c" style="display:none"> (<i>Hlong</i>)</span></span>
</div>
<p class="pardesc">End index of each found instance of the component
model in the tuples describing the component matches.</p>
</div>
  <div class="par">
<div class="parhead">
<span id="Score" class="parname"><b><code><span data-if="hdevelop" style="display:inline">Score</span><span data-if="c" style="display:none">Score</span><span data-if="cpp" style="display:none">Score</span><span data-if="com" style="display:none">Score</span><span data-if="dotnet" style="display:none">score</span><span data-if="python" style="display:none">score</span></code></b> (output_control)  </span><span>real(-array) <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">Sequence[float]</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (real)</span><span data-if="dotnet" style="display:none"> (<i>double</i>)</span><span data-if="cpp" style="display:none"> (<i>double</i>)</span><span data-if="c" style="display:none"> (<i>double</i>)</span></span>
</div>
<p class="pardesc">Score of the found instances of the component model.</p>
</div>
  <div class="par">
<div class="parhead">
<span id="RowComp" class="parname"><b><code><span data-if="hdevelop" style="display:inline">RowComp</span><span data-if="c" style="display:none">RowComp</span><span data-if="cpp" style="display:none">RowComp</span><span data-if="com" style="display:none">RowComp</span><span data-if="dotnet" style="display:none">rowComp</span><span data-if="python" style="display:none">row_comp</span></code></b> (output_control)  </span><span>point.y(-array) <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">Sequence[float]</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (real)</span><span data-if="dotnet" style="display:none"> (<i>double</i>)</span><span data-if="cpp" style="display:none"> (<i>double</i>)</span><span data-if="c" style="display:none"> (<i>double</i>)</span></span>
</div>
<p class="pardesc">Row coordinate of the found component matches.</p>
</div>
  <div class="par">
<div class="parhead">
<span id="ColumnComp" class="parname"><b><code><span data-if="hdevelop" style="display:inline">ColumnComp</span><span data-if="c" style="display:none">ColumnComp</span><span data-if="cpp" style="display:none">ColumnComp</span><span data-if="com" style="display:none">ColumnComp</span><span data-if="dotnet" style="display:none">columnComp</span><span data-if="python" style="display:none">column_comp</span></code></b> (output_control)  </span><span>point.x(-array) <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">Sequence[float]</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (real)</span><span data-if="dotnet" style="display:none"> (<i>double</i>)</span><span data-if="cpp" style="display:none"> (<i>double</i>)</span><span data-if="c" style="display:none"> (<i>double</i>)</span></span>
</div>
<p class="pardesc">Column coordinate of the found component matches.</p>
</div>
  <div class="par">
<div class="parhead">
<span id="AngleComp" class="parname"><b><code><span data-if="hdevelop" style="display:inline">AngleComp</span><span data-if="c" style="display:none">AngleComp</span><span data-if="cpp" style="display:none">AngleComp</span><span data-if="com" style="display:none">AngleComp</span><span data-if="dotnet" style="display:none">angleComp</span><span data-if="python" style="display:none">angle_comp</span></code></b> (output_control)  </span><span>angle.rad(-array) <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">Sequence[float]</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (real)</span><span data-if="dotnet" style="display:none"> (<i>double</i>)</span><span data-if="cpp" style="display:none"> (<i>double</i>)</span><span data-if="c" style="display:none"> (<i>double</i>)</span></span>
</div>
<p class="pardesc">Rotation angle of the found component matches.</p>
</div>
  <div class="par">
<div class="parhead">
<span id="ScoreComp" class="parname"><b><code><span data-if="hdevelop" style="display:inline">ScoreComp</span><span data-if="c" style="display:none">ScoreComp</span><span data-if="cpp" style="display:none">ScoreComp</span><span data-if="com" style="display:none">ScoreComp</span><span data-if="dotnet" style="display:none">scoreComp</span><span data-if="python" style="display:none">score_comp</span></code></b> (output_control)  </span><span>real(-array) <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">Sequence[float]</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (real)</span><span data-if="dotnet" style="display:none"> (<i>double</i>)</span><span data-if="cpp" style="display:none"> (<i>double</i>)</span><span data-if="c" style="display:none"> (<i>double</i>)</span></span>
</div>
<p class="pardesc">Score of the found component matches.</p>
</div>
  <div class="par">
<div class="parhead">
<span id="ModelComp" class="parname"><b><code><span data-if="hdevelop" style="display:inline">ModelComp</span><span data-if="c" style="display:none">ModelComp</span><span data-if="cpp" style="display:none">ModelComp</span><span data-if="com" style="display:none">ModelComp</span><span data-if="dotnet" style="display:none">modelComp</span><span data-if="python" style="display:none">model_comp</span></code></b> (output_control)  </span><span>integer(-array) <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">Sequence[int]</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (integer)</span><span data-if="dotnet" style="display:none"> (<i>int</i> / </span><span data-if="dotnet" style="display:none">long)</span><span data-if="cpp" style="display:none"> (<i>Hlong</i>)</span><span data-if="c" style="display:none"> (<i>Hlong</i>)</span></span>
</div>
<p class="pardesc">Index of the found components.</p>
</div>
<h2 id="sec_result">结果</h2>
<p>If the parameter values are correct, 该算子
<code><span data-if="hdevelop" style="display:inline">find_component_model</span><span data-if="c" style="display:none">find_component_model</span><span data-if="cpp" style="display:none">FindComponentModel</span><span data-if="com" style="display:none">FindComponentModel</span><span data-if="dotnet" style="display:none">FindComponentModel</span><span data-if="python" style="display:none">find_component_model</span></code> 返回值 <TT>2</TT> (
      <TT>H_MSG_TRUE</TT>)
    .  If the input
is empty (no input image available) the behavior can be set via
<a href="set_system.html"><code><span data-if="hdevelop" style="display:inline">set_system('no_object_result',&lt;Result&gt;)</span><span data-if="c" style="display:none">set_system("no_object_result",&lt;Result&gt;)</span><span data-if="cpp" style="display:none">SetSystem("no_object_result",&lt;Result&gt;)</span><span data-if="com" style="display:none">SetSystem("no_object_result",&lt;Result&gt;)</span><span data-if="dotnet" style="display:none">SetSystem("no_object_result",&lt;Result&gt;)</span><span data-if="python" style="display:none">set_system("no_object_result",&lt;Result&gt;)</span></code></a>.  If necessary, an
exception is raised.</p>
<h2 id="sec_predecessors">可能的前置算子</h2>
<p>
<code><a href="create_trained_component_model.html"><span data-if="hdevelop" style="display:inline">create_trained_component_model</span><span data-if="c" style="display:none">create_trained_component_model</span><span data-if="cpp" style="display:none">CreateTrainedComponentModel</span><span data-if="com" style="display:none">CreateTrainedComponentModel</span><span data-if="dotnet" style="display:none">CreateTrainedComponentModel</span><span data-if="python" style="display:none">create_trained_component_model</span></a></code>, 
<code><a href="create_component_model.html"><span data-if="hdevelop" style="display:inline">create_component_model</span><span data-if="c" style="display:none">create_component_model</span><span data-if="cpp" style="display:none">CreateComponentModel</span><span data-if="com" style="display:none">CreateComponentModel</span><span data-if="dotnet" style="display:none">CreateComponentModel</span><span data-if="python" style="display:none">create_component_model</span></a></code>, 
<code><a href="read_component_model.html"><span data-if="hdevelop" style="display:inline">read_component_model</span><span data-if="c" style="display:none">read_component_model</span><span data-if="cpp" style="display:none">ReadComponentModel</span><span data-if="com" style="display:none">ReadComponentModel</span><span data-if="dotnet" style="display:none">ReadComponentModel</span><span data-if="python" style="display:none">read_component_model</span></a></code>
</p>
<h2 id="sec_successors">可能的后置算子</h2>
<p>
<code><a href="get_found_component_model.html"><span data-if="hdevelop" style="display:inline">get_found_component_model</span><span data-if="c" style="display:none">get_found_component_model</span><span data-if="cpp" style="display:none">GetFoundComponentModel</span><span data-if="com" style="display:none">GetFoundComponentModel</span><span data-if="dotnet" style="display:none">GetFoundComponentModel</span><span data-if="python" style="display:none">get_found_component_model</span></a></code>
</p>
<h2 id="sec_alternatives">可替代算子</h2>
<p>
<code><a href="find_generic_shape_model.html"><span data-if="hdevelop" style="display:inline">find_generic_shape_model</span><span data-if="c" style="display:none">find_generic_shape_model</span><span data-if="cpp" style="display:none">FindGenericShapeModel</span><span data-if="com" style="display:none">FindGenericShapeModel</span><span data-if="dotnet" style="display:none">FindGenericShapeModel</span><span data-if="python" style="display:none">find_generic_shape_model</span></a></code>
</p>
<h2 id="sec_see">参考其它</h2>
<p>
<code><a href="find_shape_model.html"><span data-if="hdevelop" style="display:inline">find_shape_model</span><span data-if="c" style="display:none">find_shape_model</span><span data-if="cpp" style="display:none">FindShapeModel</span><span data-if="com" style="display:none">FindShapeModel</span><span data-if="dotnet" style="display:none">FindShapeModel</span><span data-if="python" style="display:none">find_shape_model</span></a></code>, 
<code><a href="find_shape_models.html"><span data-if="hdevelop" style="display:inline">find_shape_models</span><span data-if="c" style="display:none">find_shape_models</span><span data-if="cpp" style="display:none">FindShapeModels</span><span data-if="com" style="display:none">FindShapeModels</span><span data-if="dotnet" style="display:none">FindShapeModels</span><span data-if="python" style="display:none">find_shape_models</span></a></code>, 
<code><a href="get_shape_model_params.html"><span data-if="hdevelop" style="display:inline">get_shape_model_params</span><span data-if="c" style="display:none">get_shape_model_params</span><span data-if="cpp" style="display:none">GetShapeModelParams</span><span data-if="com" style="display:none">GetShapeModelParams</span><span data-if="dotnet" style="display:none">GetShapeModelParams</span><span data-if="python" style="display:none">get_shape_model_params</span></a></code>, 
<code><a href="get_component_model_params.html"><span data-if="hdevelop" style="display:inline">get_component_model_params</span><span data-if="c" style="display:none">get_component_model_params</span><span data-if="cpp" style="display:none">GetComponentModelParams</span><span data-if="com" style="display:none">GetComponentModelParams</span><span data-if="dotnet" style="display:none">GetComponentModelParams</span><span data-if="python" style="display:none">get_component_model_params</span></a></code>, 
<code><a href="train_model_components.html"><span data-if="hdevelop" style="display:inline">train_model_components</span><span data-if="c" style="display:none">train_model_components</span><span data-if="cpp" style="display:none">TrainModelComponents</span><span data-if="com" style="display:none">TrainModelComponents</span><span data-if="dotnet" style="display:none">TrainModelComponents</span><span data-if="python" style="display:none">train_model_components</span></a></code>, 
<code><a href="set_shape_model_origin.html"><span data-if="hdevelop" style="display:inline">set_shape_model_origin</span><span data-if="c" style="display:none">set_shape_model_origin</span><span data-if="cpp" style="display:none">SetShapeModelOrigin</span><span data-if="com" style="display:none">SetShapeModelOrigin</span><span data-if="dotnet" style="display:none">SetShapeModelOrigin</span><span data-if="python" style="display:none">set_shape_model_origin</span></a></code>, 
<code><a href="smallest_rectangle2.html"><span data-if="hdevelop" style="display:inline">smallest_rectangle2</span><span data-if="c" style="display:none">smallest_rectangle2</span><span data-if="cpp" style="display:none">SmallestRectangle2</span><span data-if="com" style="display:none">SmallestRectangle2</span><span data-if="dotnet" style="display:none">SmallestRectangle2</span><span data-if="python" style="display:none">smallest_rectangle2</span></a></code>
</p>
<h2 id="sec_module">模块</h2>
<p>
Matching</p>
<!--OP_REF_FOOTER_START-->
<hr>
<div class="indexlink">
<a href="index_classes.html"><span data-if="dotnet" style="display:none;">类别</span><span data-if="cpp" style="display:none;">类别</span></a><span data-if="dotnet" style="display:none;"> | </span><span data-if="cpp" style="display:none;"> | </span><a href="index_by_name.html">算子列表</a>
</div>
<div class="footer">
<div class="copyright">HALCON算子参考手册 Copyright © 2015-2023 51Halcon</div>
</div>
</div>
</body>
</html>
